我正在使用Selenium WebDriver对网站进行自动化测试。我已经成功点击了众多菜单和指向某个点的链接。
我正在使用的网站有时会生成如下所示的链接:
<U onclick="HourglassSubmitItem(document.all('PageName').value, '00000001Responsibility Code')">Responsibility Code</U>
我正在尝试使用webdriver的.click功能单击此链接但没有成功。
使用此:
page.find_element_by_xpath("//u[contains(text(),'Responsibility Code')]")
成功找到上面的U标记。但是当我将.click()添加到此xpath的末尾时,不执行单击。但它也不会产生错误。所以,我的问题是可以使用Selenium来模拟不是anchor()标记的HTML标记的点击吗?如果是这样,怎么样?
我还会说我无法控制我正在使用的页面,因此无法更改为。
我希望社群可以提供任何指导。
谢谢你的帮助,
克里斯
答案 0 :(得分:0)
有时使用JavaScript
可以解决&#34;点击&#34;问题:
element = page.find_element_by_xpath("//u[contains(text(),'Responsibility Code')]")
page.execute_script('arguments[0].click();', element)
答案 1 :(得分:0)
在这种情况下,您可以选择JavaScript。
WebElment element = page.find_element_by_xpath("//u[contains(text(),'Responsibility Code')]")
JavaScriptExecutor executor = (JavaScriptExecutor)driver;
executor.ExecuteScript("arguments[0].click();", element);