我遇到同样的问题,如上所述here我需要等待网站加载,我可以知道它完成时微调消失,然后我需要进行测试。但是,这样一个简单的测试:微调后测试
beforeAll(function(){
Core.login(env.currentUser).then(function(){
var foo = browser.wait(function(){
return !browser.isElementPresent(by.css('.modal .env-waiting-content'));
}, 50000);
console.log("page loaded");
mainPage.navBar.buttons.logIncident.click();
});
});
it('should work', function(){
expect(1).toBe(1);
});
失败,出现错误:
Message:
Failed: ENOTFOUND getaddrinfo ENOTFOUND
Stack:
Error: Failed: ENOTFOUND getaddrinfo ENOTFOUND
at /home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/jasminewd2/index.js:104:16
at /home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1582:15
at [object Object].webdriver.promise.ControlFlow.runInNewFrame_ (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1654:20)
at notify (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:465:12)
at notifyAll (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:442:7)
at resolve (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:420:7)
at reject (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:545:5)
at /home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1582:15
at [object Object].webdriver.promise.ControlFlow.runInNewFrame_ (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1654:20)
at notify (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:465:12)
at notifyAll (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:442:7)
at resolve (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:420:7)
at [object Object].reject (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:545:5)
at /home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1529:10
at newFrame.onAbort (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1679:7)
at [object Object].webdriver.promise.Frame_.notify_ (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1914:5)
at [object Object]._onTimeout (/home/set/.nvm/v0.10.28/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1887:13)
at Timer.listOnTimeout [as ontimeout] (timers.js:110:15)
- 我怎样才能避免这种错误,为什么发生?
- 为什么
console.log("page loaded");
输出消息要比微调消失得早得多,以及在when
之后执行某些代码的方式是什么,某种then
? - browser.wait和browser.driver.wait有什么区别?