Javascript jasmine expect语句在量角器场景中不执行
不幸的是,我没有很好的娱乐步骤。这只发生在我的电脑上 我的一些测试似乎运行得很好,但没有一个expect真正执行。在其他测试中,浏览器在加载页面之前会上下移动。可能是同一个问题 我有一个测试:Javascript jasmine expect语句在量角器场景中不执行,javascript,jasmine,protractor,Javascript,Jasmine,Protractor,不幸的是,我没有很好的娱乐步骤。这只发生在我的电脑上 我的一些测试似乎运行得很好,但没有一个expect真正执行。在其他测试中,浏览器在加载页面之前会上下移动。可能是同一个问题 我有一个测试: expect(page.courseTitle.getText()).toBe 'Symphony' expect(page.courseTitle.getText()).toBe 'garbage' 我预计这会失败,但事实并非如此。如果我添加该行: expect(true).toBe false e
expect(page.courseTitle.getText()).toBe 'Symphony'
expect(page.courseTitle.getText()).toBe 'garbage'
我预计这会失败,但事实并非如此。如果我添加该行:
expect(true).toBe false
expect(true).toBe true
测试失败,出现两个错误。如果我添加该行:
expect(true).toBe false
expect(true).toBe true
测试根本没有失败。如果需要比较字符串值,请使用
toEqual()
matcher:
expect(page.courseTitle.getText()).toEqual('Symphony');
expect(true)。toBe false
expect(true)。to be true
您不应该在此处调用toBe
:
expect(true).toBe(false);
expect(true).toBe(true);
您可以使用以下选项:
expect(page.courseTitle.getText()).toBe('Symphony');
expect(page.courseTitle.getText()).toBe('garbage')
expect(true).toBeTruthy();
expect(true).toBeFalsy();
我想你误解了这一点。带有垃圾的行应该失败,但不会失败,除非我添加了一个可以同步执行的expect 顺便说一句,这不会发生在我们的构建机器上,只会发生在我的计算机上 我确实找到了一个有效的测试,并从中进行了反向操作。 添加此代码导致预期执行:
afterEach ->
browser.manage().logs().get('browser').then (browserLogs)->
# Do some work here
这几乎就好像测试没有等到承诺兑现才退出 当你说浏览器在加载页面之前会上下移动时,你的
页面.courseTitle.getText()
是否正常工作?然后(函数(actualText){console.log(actualText);expect(actualText.toBe('Symphony');})代码>