在Selenium java中通过id查找web元素时使用正则表达式

时间:2017-06-26 22:20:42

标签: selenium

我正在尝试使用元素ID定位Web元素。但是同一个web元素的id在

之间变化
Driver.findElement(By.id("ItemDetailsCompView.**Edit**ViewUIElement_Field_Tab_2_Product_Materials")) 

Driver.findElement(By.id(ItemDetailsCompView.**Display**ViewUIElement_Field_Tab_2_Product_Materials"))

当我为一个id进行硬编码而另一个id出现时,这会导致错误。有没有办法创建一个字符串来搜索id中的编辑/显示单词。

我无法使用Xpath,因为我的网页很复杂,并且包含各种嵌套表格。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用CSS选择器(这里的语法可能不正确,它不清楚您使用的是哪种语言):

Driver.findElement(By.CssSelector([id*="ViewUIElement_Field_Tab_2_Product_Materials"]))

如果可以在其上提供元素标记名称,那就更好了。