在不同页面上过滤具有相同功能的xpath

时间:2017-07-04 12:56:36

标签: c# selenium xpath selenium-webdriver

因为我在几个不同的页面上具有相同的功能,并且不想重复自己。我想创建一个xpath,用通配符检索元素。在每个页面上我都有一个输入ID,它们看起来像这样:

tbAAFound_fileUpload
tbBBFound_fileUpload
tbCCFound_fileUpload
tbDDFound_fileUpload
tbEEFound_fileUpload

我想制作xpath过滤器,以便搜索是否可以在多个页面上找到该元素。

当我尝试以下xpath:

[FindsBy(How = How.XPath, Using = "//input[starts-with(@id, 'tb:') and contains(@id, '_fileUpload')]")]
private IWebElement UrlFileElement { get; set; }

Selenium无法找到该元素。希望你们能帮助我。

2 个答案:

答案 0 :(得分:0)

试试这个..

[FindsBy(How = How.XPath, Using = "//*[contains(@id,’_fileUpload’)]")]
private IWebElement UrlFileElement { get; set; }

答案 1 :(得分:0)

starts-with(@id, 'tb:')删除:,因为它实际上不是id