Javascript 量角器:捕捉断言错误
为了创建一个基于javascript的测试工具,我使用了量角器和Chai,就像我承诺的那样Javascript 量角器:捕捉断言错误,javascript,protractor,chai,chai-as-promised,Javascript,Protractor,Chai,Chai As Promised,为了创建一个基于javascript的测试工具,我使用了量角器和Chai,就像我承诺的那样 AssertionError:应为'http://localhost:8888/test/homepage.php“平等”http://localhost:8888/test/my_homepage.php“ 当我使用此步骤定义检查url时: this.Then(/^The url of the page should be "([^"]*)"$/, function(myUrl, callback){
AssertionError:应为'http://localhost:8888/test/homepage.php“平等”http://localhost:8888/test/my_homepage.php“
当我使用此步骤定义检查url时:
this.Then(/^The url of the page should be "([^"]*)"$/, function(myUrl, callback){
expect(browser.getCurrentUrl()).to.eventually.equal(myUrl);
callback();
});
为了使用不同的回调函数,我想捕捉这个错误,我该怎么做?我试着用一个try-catch挡块,但似乎不起作用。我甚至不能理解,如果断言错误是由量角器生成的,你能温和地给我解释一下吗
提前谢谢你我找不到任何可以捕获expect错误并执行其他操作的东西。如果@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 '));
}
notify
这里的帮助:expect(browser.getCurrentUrl()).to.finally.equal(myUrl).notify(yourcallback)
?我不知道为什么,但是callback.fail()不是一个可识别的函数。看起来它们在0.7.0中删除了callback.fail()
。检查。您可能只想执行,callback(新错误('something gorror')代码>错误现在是->语法错误:意外标记非法:(你能试着只放一个字符串而不是一个错误对象吗?我更新了应答器相同的结果:(是否存在可以找到回调参数的文档?