How to Click on link which has Javascript using Watir
我是Watir的新手,并且遇到了一个阻碍我前进的场景。我必须点击下面的链接。它显示为链接。是正常的忘记了密码吗?单击此处..我正在测试的应用程序中存在的选项。请建议如何单击此链接。我也尝试了下面提到的x路径,但是没有运气。
1 |
没有运气的x路径:
1 2 3 | 1> ie.link(:xpath,"//img[@onclick='javascript:forgot_password()']").click 2> ie.link(:xpath,"//a[@href='javascript:forgot_password()']/").text # =>"Click Here)" 3> ie.element_by_xpath("//link[contains(@href , 'javascript:forgot_password()')]/").click |
您尝试过吗?
1 | browser.link(:href =>"javascript:forgot_password()").click |
您的xpath选择器看起来很困惑。
第一行
1 | ie.link(:xpath,"//img[@onclick='javascript:forgot_password()']").click |
旨在查找链接,但查找图像。那行得通吗?
尝试使用
1 | ie.link(:xpath,"//a[@onclick='javascript:forgot_password()']").click |
或
1 | ie.link(:xpath,"//a[@onclick='javascript:forgot_password()']").fire_event('onclick') |
在元素上使用
我无法完全确定该页面,但是您可能根本不需要使用xpath来查找此元素。
如果文本为" Click here ",则可以将其用作定位符。
1 | ie.link(:text =>"Click here").click |
...或等效的
要在不查看有问题的html的情况下诊断问题非常困难,并且要针对该问题运行准确的Watir(即直接从文件中复制并粘贴),因此这些建议几乎是黑暗中的镜头。<铅>
首先检查xpath是否在您的系统上运行:appart form watir gem,您必须已安装版本大于3.1.6的REXML。
我不知道您的代码有什么问题,因为我不知道您正在访问哪个页面,如果可以的话,请给我们链接。就我个人而言,我会做这样的事情,但是可能会有很多选择。
1 | ie.link(:xpath,"//a[contains(@href='javascript:forgot_password')]/").click |