Selenium 测试重复文本

发布于 2024-11-18 11:03:24 字数 187 浏览 2 评论 0原文

Selenium 是否可以检查某个文本是否在页面上出现多次(次数并不重要,只要出现多次即可)?

我知道我可以使用“但是”来测试文本,

selenium.IsTextPresent(text)

但是一旦找到文本,它就会立即返回 true。有没有办法查看文本是否在页面上多次存在?

Is it possible in Selenium to check if a certain text appears more than once on a page (it doesn't matter how many times, just if it is more than once)?

I know that I can test for the text with

selenium.IsTextPresent(text)

But of course that returns true as soon as it finds the text once. Is there a way to see if text exists multiple times on a page?

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

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

发布评论

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

评论(2

守不住的情 2024-11-25 11:03:24

您可以对 html 源进行操作:

selenium.GetHtmlSource();

然后简单检查测试的索引和最后一个索引(如 nabuchodonossor 在他的评论中建议的那样):

selenium.GetHtmlSource().IndexOf(text) > -1 && selenium.GetHtmlSource().IndexOf(text) != selenium.GetHtmlSource().LastIndexOf(text)

您还可以在检查索引之前删除所有 html 标签,仅在您想忽略注释时才保留可见文本、alt 属性、标题属性等。

You can operate on html source:

selenium.GetHtmlSource();

Then simple check for the index of the test and last index (as nabuchodonossor suggested in his comment):

selenium.GetHtmlSource().IndexOf(text) > -1 && selenium.GetHtmlSource().IndexOf(text) != selenium.GetHtmlSource().LastIndexOf(text)

You can also remove all html tags before checking indexes and leave the visible text only if you want to ignore comments, alt attributes, title attributes etc.

只怪假的太真实 2024-11-25 11:03:24

另一种方法是 sel.getElementCount(xpath) 或使用 sel.getEval() 运行 JS 脚本。与 sel.getHtmlSource() 相比,这两种方法的优点是您无需从 selenium 服务器带回整个页面 html。这项工作是在服务器端完成的,您可以节省带宽(可能还有速度)。

Another way to go is sel.getElementCount(xpath) or running a JS script using sel.getEval(). The advantage of these two methods over sel.getHtmlSource() is that you don't bring back the whole page html from the selenium server. The work is done on the server side and you save the bandwidth (and probably speed).

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