我是量角器和茉莉花的新手,我使用了很多browser.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的情况下编写测试用例的更有效方法........由于互联网连接速度较慢等原因,我一直在使用睡眠....
感谢任何帮助
答案 0 :(得分:3)
执行任何测试的有效方法是使用implicit和explicit等待。可以在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
希望它有所帮助。