Mat*_*ood 18 javascript selenium angularjs selenium-webdriver protractor
我第一次参加E2E考试.我正在尝试消化别人的量角器测试.
问题:有很多,browser.driver.sleep
这似乎很脆弱.
目标:不要使用browser.driver.sleep
问题: 什么是更好的方法browser.driver.sleep
?一个不那么脆弱的东西,比如承诺或我不知道的事情大声笑?
var config = require('../../protractor.conf.js').config;
describe('this Homepage Body Tests', function(){
browser.driver.get(config.homepageUrl);
it("should open find a clinic page", function(){
// page loads :: want to fix this random wait interval
browser.driver.sleep(2000);
browser.ignoreSynchronization = true;
var string = 'clinic';
var main = '.search-large-text';
var link = element(by.cssContainingText('.submenu li a', string));
link.click().then(function() {
// page reloads :: want to fix this random wait interval
browser.driver.sleep(3000);
var title = element(by.cssContainingText(main, string));
expect(title.getText()).toBe(string);
});
});
});
Run Code Online (Sandbox Code Playgroud)
ale*_*cxe 11
由于有一个ignoreSynchronization
打开,你不能使用waitForAngular()
,这将是一个角度站点测试的解决方案.
这里更好的解决方案是设置页面加载超时:
browser.manage().timeouts().pageLoadTimeout(10000); // 10 seconds
Run Code Online (Sandbox Code Playgroud)
另请参阅显式等待和超时的这些相关线程:
归档时间: |
|
查看次数: |
42307 次 |
最近记录: |