javascript - 如果功能失败,如何使量角器测试失败?
问题描述
所以基本上我有一些辅助方法来帮助我调试我的量角器测试用例,我的主要方法之一是等待一个元素可点击,我正在创建这个循环以给量角器提供必要的时间来查找并确保元素已启用,但是当找不到元素时,无论是由于找不到元素还是我的脚本上的拼写错误,我希望测试运行停止并将其标记为失败..
async WaitToBeClickable(element){
try{
for(var i = 0; i <= 3000; i++){
var wait = await browser.wait(this.EC.elementToBeClickable(element), i);
if(wait == true){
break;
}else{
//this is where I want to fail
}
}
}catch(err){
//this is where I want to fail
await console.log(`WAIT TO BE CLICKABLE FAILED:\n${element.parentElementArrayFinder.locator_.value}\n\nError:\n${err}\n`);
}
};
自从我在 VSC 上工作以来,这将帮助我调试我的脚本,但我似乎还没有找到一种方法来使测试失败,从而在第一次失败时关闭浏览器,我已经看到 protractor-fail -fast 和 protractor-bail-fast,但它似乎是针对 jasmine 测试用例而不是功能,我真的很感谢任何帮助,量角器让我有点发疯,哈哈……
解决方案
//method
const checkData = () = {
return new Promise((resolve)=>{
if(true){
// Success case
return resolve(true)
}
else{
// Fail case
return reject(false)
}
})
}
//Specfile
it('sample test',async ()=>{
Let data = await checkData();
expect(data).toEqual(true);
})
基于解析值测试将通过或失败
推荐阅读
- javascript - 掷骰子 - Javascript 无法正常工作且图像无法上传
- php - 如何在代码 PHP 中获取文件 url 和文件路径
- python - 如何通过 Python 代码模拟导出 CSV 功能(其中
- r - 用于回归的 for 循环中的 try-catch
- xamarin - 无法从本机句柄 0x15 (key_handle 0x98855da) 激活 Android.Util.SparseArray`1[E] 类型的实例
- java - 如何使用 HtmlUnitDriver 和 Selenium Java 发送登录凭据
- personalization - 如何在 nopcommerce 网站上使用个性化
- python - 带有 BeautifulSoup 的网页抓取问题
- python - 对于 PIL.ImageFilter.GaussianBlur 如何使用什么内核以及半径参数与标准偏差有关吗?
- javascript - Node.js TypeError:访问req.handle时无法读取未定义的属性“句柄”