我正在使用Protractor和Chai作为承诺,以创建一个基于
javascript的测试工具,我收到错误
AssertionError:预期’http:// localhost:8888 / test / homepage.php’等于’http:// localhost:8888 / test / my_homepage.php’
我正在使用此步骤定义检查网址:
this.Then(/^The url of the page should be "([^"]*)"$/, function(myUrl, callback){
expect(browser.getCurrentUrl()).to.eventually.equal(myUrl);
callback();
});
我想捕获此错误以便使用不同的回调函数,我该怎么做?我试过使用try-catch块但它似乎不起作用.我甚至无法理解Protractor是否产生了AssertionErrors,你能轻轻地给我一个解释吗?
先感谢您
最佳答案 我找不到任何能够从预期中捕获错误并做其他事情的事情.如果@ alecxe的评论建议有效,那应该是你的答案,否则为什么不这样做
browser.getCurrentUrl().then(function(url) {
if(url === myUrl) {
callback();
} else {
callback('something went wrong');
}
});
或者这不起作用?
try {
expect(browser.getCurrentUrl()).to.eventually.equal(myUrl);
callback();
} catch(e) {
callback('something went wrong '));
}