我正在尝试自动化一个场景(在Ruby中),其中按钮初始文本是“激活”,一旦点击,需要3-5秒才能完成所需的操作然后按钮文本更改为'停用&#39 ;.
由于该按钮始终存在,因此使用以下代码无效。
wait.until {
driver.find_element(:id => 'changeStatus')
}
如何在点击后检查按钮文本之前让webdriver等待5秒钟。
答案 0 :(得分:1)
您应该可以等待并查找文本
wait.until {
driver.find_elements_by_xpath("//*[text()='Deactivate']")
}
答案 1 :(得分:1)
Brendan的答案肯定是正确的,但我会使用更具体的XPath,因为陈述的答案将等到“停用”字样。在页面上随处出现。
考虑缩小搜索元素的类型,并进一步缩小ID。你不会说它是什么类型的元素,所以我猜它是一个锚标签(// a),根据需要进行调整
wait.until {
driver.find_elements_by_xpath("//a[@id='changeStatus' and text()='Deactivate']")
}
这应该会大大加快搜索速度