我在selenium中有一个代码,可以动态点击菜单页面中的标签。有时会发生选项卡不可点击(它只是一个内部有td
的普通span
)当Web Driver
尝试点击此选项卡时,我的程序被冻结(没有异常抛出或任何东西)。
我无法避免点击这样的标签,但我想以某种方式防止点击后冻结。那么我可以设置一些超时或告诉selenium如果元素不可点击该怎么办?
driver.findElement(By.xpath(
format("//span[@class='rf-tab-lbl'][text()='{0}']",
navigation.getGroup()))).click();
//if the tab is currently selected (hence is not clickable) selenium won't click
// on it and program freezes
答案 0 :(得分:0)
请尝试使用其他网站的其他页面。这可能是一个JS循环问题。 我在HtmlUnit中遇到了一些URL的问题。 我在HtmlUnit用户组中提出了问题。 他们告诉我JS无限循环导致freez。 超时对我来说也不起作用。
我试着用自己的时间。那也行不通。
请参阅以下问题以应用自己的超时
如果它适用于其他网站,则问题可能是特定于网站的。 你可以在eclipse中附加Selenium的来源并检查/调试它被卡住的地方。 我为HtmlUnit做了同样的事情。我达成了解析方法,但没有出来。
如果仍然无效,请联系Selenium支持。