Selenium、XPath 节点集和 PHPUnit

发布于 2024-11-14 19:20:44 字数 344 浏览 3 评论 0原文

使用像 (//div[@class='nav']//a)[5] 这样的表达式来使用 Selenium 检索特定元素(通过 phpunit 触发)由于某种原因永远不会成功。

Xpath 是有效的,使用其他 Xpath 表达式可以正常工作,但是一旦 Xpa​​th 包含小括号,Selenium 服务器 (2.0rc2) 就会开始返回 ERROR: Element (//div[@class='nav']//a)[ 5] 未找到。 即使该元素存在。

这是 Selenium 的 PHP-Webdriver 的限制吗?是否有某种解决方法(获取节点集中的第 n 个元素)?

干杯

using an expression like (//div[@class='nav']//a)[5] to retrieve a specific element with Selenium (triggered through phpunit) never suceeds for some reason.

The Xpath is valid, using other Xpath expressions works fine, but once the Xpath contains brakets the Selenium server (2.0rc2) starts returning ERROR: Element (//div[@class='nav']//a)[5] not found. even it that element is present.

Is this a limitation of the PHP-Webdriver for Selenium, is there some kind of workaround (to get the nth element within a node-set)?

Cheers

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一念一轮回 2024-11-21 19:20:44

从主题 Can't get nth node in Selenium 我看到你可以尝试添加前缀xpath= 添加到您的表达式中以使其正常工作。

From topic Can't get nth node in Selenium i see you can try prepending xpath= to your expression to get it work.

指尖上得阳光 2024-11-21 19:20:44

这是最终的解决方案:
xpath=(//div[@class='nav']//a)[position()=5]

不确定为什么 [5] 不起作用,可能仍然是 phpunit 中的问题

干杯

This was the final solution:
xpath=(//div[@class='nav']//a)[position()=5]

Not sure why [5] didn't work, might still be an issue within phpunit

Cheers

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文