等待元素出现或返回false

时间:2019-03-24 17:29:53

标签: javascript testing protractor

可以等到页面上有browser.wait(EC.presenceOf(element(by.id("button"))), 5000, "button not found")的元素存在

当在页面上找不到元素时,这将引发错误。我不希望此函数抛出错误,相反,如果5秒钟后未找到该元素,它应该返回false

我该如何实现?

2 个答案:

答案 0 :(得分:2)

您可以尝试实现此目的的一种方法是使用标准的try / catch方法。这将捕获浏览器产生的异常。等待并在捕获中对其进行处理。

try{
   browser.wait(EC.presenceOf(element(by.id("button"))), 5000, "button not found")
}catch(){
   return false;
};

答案 1 :(得分:0)

您可以尝试通过isdisplayed()函数使用if else块,例如

$serverName

您可以使用布尔变量代替return来保存结果。