量角器在不使用browser.sleep的情况下编写更干净的测试用例
Protractor writing a cleaner test cases without using browser.sleep
我是量角器和茉莉花的新手,我使用了很多浏览器.sleep来使我的测试用例工作
it('Procedure tab-', function() {
element(by.linkText('Medical History')).click();
browser.sleep(500)
element(by.linkText('Personal History')).click();
browser.sleep(200)
element(by.linkText('Procedure')).click();
browser.sleep(500)
element(by.css('[data-ng-show="ptab.index === 1"] > [profile="profile"] > #medicalhistory > .card > [header="header"] > .card-header-bg > .title-header > .row > [ui-sref=".procedure.new"] > [data-ng-hide="important"]')).click();
browser.sleep(500)
$('label[for="dis4Appendicitis"]').click();
browser.sleep(2000)
})
有什么更有效的方法可以在不使用browser.sleep的情况下编写测试用例。我一直在使用睡眠,因为互联网连接速度较慢等......
任何帮助不胜感激
执行任何测试的有效方法是使用隐式和显式等待。可以在 conf.js 文件中添加隐式等待,以便量角器在测试执行开始时将其考虑在内。举个例子——
browser.manage().timeouts().implicitlyWait(10000); //Wait for 10 seconds before failing particular actions/operations
并且可以使用wait()
函数与ExpectedConditions
来实现显式等待。
这有效地取代了
browser.sleep()
方法,通过连续 检查指定的预期条件。
这是如何使用它 -
var EC = protractor.ExpectedConditions;
var elem = element(by.css(LOCATOR));
browser.wait(EC.visibilityOf(elem), 10000); //Wait for 10 seconds before failing the step
希望对您有所帮助。
相关文章:
- angularjs、因果报应和requirejs测试用例错误
- 我们能在&在块到mocha的特定测试用例(it)之后
- 在Karma Jasmine单元测试用例中检查日期格式
- 正在量角器测试用例中从电子邮件中获取值
- 如何将 XML 文件包含在摩卡测试用例中
- 如何将行数计数分配给另一个值,该值稍后可在Protractor中的测试用例中使用
- 如何在启动Mocha测试用例之前添加延迟
- 如何在nightwach中检索当前测试用例名称
- 如何在多个文件中设置摩卡测试用例的执行顺序
- 如何在断言失败时继续测试用例 在 CasperJS 中
- 为什么在我的量角器测试用例中没有定义网络驱动程序
- 猫鼬模型单元测试 - 如果任何测试用例失败,连接将不会关闭
- 如何在量角器 e2e 测试用例失败时发送电子邮件
- 测试用例在 Chrome 中失败
- 如何在摩卡的测试用例中调用另一个测试用例
- 如何处理单元测试用例的q和promise
- ECMAScript 5日期.ISO 8601测试用例的分析结果
- 如何在运行JEST测试用例时将全局变量设置为true
- 如何在jasmine测试用例中模拟$(element).show和ko.mapping.fromJS
- AngularJS-在jasmine测试用例中嘲笑ngTableParams