dom - 使用 Selenium 自动点击 JavaScript 链接

标签 dom xpath selenium automation selenium-ide

我正在尝试自动单击在网页上异步运行的数据库的第 2 页。使用 Xpath 时:

//id('standardView')/x:div[3]/x:div[3]/x:a[1]

我收到以下错误:

[error] Invalid xpath [2]: //id('rightMenu')/x:div[3]/x:div[3]/x:a[1]

所以我尝试使用 DOM 来查找其路径,下面的代码显示了使用 Firebug 运行时推送的实际链接...

   main = document.getElementById("rightMenu"); mainCont = main.contentDocument;
   paging = mainCont.getElementsByTagName("a"); pageTwo = paging[0];

Firebug 将显示:

<a href="javascript:chgPage(2);">

但是 Selenium 抛出了这个错误:

[error] Unexpected Exception: fileName -> chrome://selenium-ide/content/selenium-
core/scripts/selenium-api.js, lineNumber -> 2535, columnNumber -> 45

只是简单地记录 Action 并没有发现按钮被按下。我似乎找不到解决方法。 friend 们有什么见解吗?

最佳答案

有点奇怪的 xpath。尝试使用 //*[@id='standardView']/div[3]/div[3]/a[1]

但尝试使用没有索引且尽可能短的选择器

//a[@href='javascript:chgPage(2);']

//*[@id='standardView']//a[@href='javascript:chgPage(2);']

这些也可以工作(如果它们是唯一的,请使用 firebug 的 firepath 插件检查)

关于dom - 使用 Selenium 自动点击 JavaScript 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15571844/

相关文章:

java - TestNG 并行执行 - 并行类的问题

java - 单击基于 div 中某些文本的按钮

java - 如何在 TestNG 中对每个类别的优先级进行分组?

jquery - 使用 jquery 根据文本将按钮更改为图像?

jquery - dojo.create() 的 jQuery 等价物是什么?

php - XPath 和 PHP : Matching text after a <br>

Ruby/Nokogiri/Xpath 浅搜索

php - 如何在div父节点中追加子节点?

javascript - 具有 ID 的 DOM 树元素是否成为全局属性?

xml - 如何处理 QTP/UFT 中对象所需的失败