我有一个网站,其网格编号与显示的主键不匹配。 例如,由于基于权限的号码跳过,该键将告诉用户表中的元素是数字42,而它只是网格中的第30个元素。 基于主键选择的最佳方法是什么,而不是selenium中的网格数?
澄清:
说我的网格看起来像这样:
6 Ice Cream
11 Hot Dog
24 Cheeseburger
25 Double Cheeseburger
26 Salad
可以选择冰淇淋
driver.findElement(By.xpath("//*grid-0");
热狗=网格-1
等...
通过其键(6)的内容选择冰淇淋的最佳方式是什么?
我可以使用
遍历整个网格driver.findElement(By.xpath("//*grid-0")).getText().contains("6");
然后我有一个问题,就是找到一个带有6的元素而不仅仅是冰淇淋,我必须遍历整个页面才能找到它,这实在是效率低下。
有什么想法吗?
答案 0 :(得分:1)
尝试这可能是有帮助的。
driver.findElement( By.xpath( "//*[contains(text(), '6 ')]" ) );
答案 1 :(得分:0)
我结束了以下事项:
driver.findElement(By.linkText("regexp:.* 6 *")).click();
感谢Ravi MCA帮助我得出这个结论!
编辑:此解决方案仅适用于selenium IDE,显然是webdriver解释regexp:。作为文字。