C#-Selenium:如何使用包含来查找两个元素之间的文本?



我想使用一个 xpath 来检查以下内容(span 和 option(。我们该怎么做呢?

//Span
webDriver.FindElement(By.XPath("//div[@class='someClass']//span[contains(text(),'Some text 1')]")).Displayed
//Option
webDriver.FindElement(By.XPath("//div[@class='someClass']//option[contains(text(),'SOme text 2')]")).Displayed

我在下面的 xpath 中尝试过,它们都没有奏效,可能有什么问题?

webDriver.FindElement(By.XPath("//div[@class='someClass' and contains(text(), 'Some text 1')]"))
webDriver.FindElement(By.XPath("//div[@class='someClass'] and [contains(text(),'Some text 1')]"))
webDriver.FindElement(By.XPath("//div[@class='someClass'][contains(text(),'Some text 1')]"))
webDriver.FindElement(By.XPath("//div[@class='someClass'] and (text(),'Some text 1')"))

请检查。

要将 span 和选项与单个 xpath 匹配,可以使用 * 通配符。

//div[@class='someClass']//*[contains(text(),'Some text 1')]

还要选中 XPath 以选择多个标签,以防您只想选择带有该文本的范围和选项,而不是任何其他类型的元素。

相关内容

  • 没有找到相关文章

最新更新