如何通过两个属性查找元素?c#网络驱动程序

如何通过两个属性查找元素?c#网络驱动程序,c#,css,selenium,xpath,C#,Css,Selenium,Xpath,我需要按类和它包含的文本查找元素。我试过这样做,但没有任何效果,请帮助(对我来说,最好选择使用css,但xpath也可以): 要素: <td class="TestClass"> TestText</td> <td class="TestClass"> TestText1</td> <td class="TestClass"> TestText2</td>... TestText 测试文本1 测试文本2。。。

我需要按类和它包含的文本查找元素。我试过这样做,但没有任何效果,请帮助(对我来说,最好选择使用css,但xpath也可以):

要素:

  <td class="TestClass"> TestText</td>
  <td class="TestClass"> TestText1</td>
  <td class="TestClass"> TestText2</td>...
TestText
测试文本1
测试文本2。。。
  • 您可以尝试使用以下XPATH表达式:

    //td[@class='TestClass'][text()='TestText']
    
  • 使用FindElement而不是FindElement。您可以找到所有td元素,然后在它们之间循环查找所需的文本

  • 您可以尝试使用以下XPATH表达式:

    //td[@class='TestClass'][text()='TestText']
    
  • 使用FindElement而不是FindElement。您可以找到所有td元素,然后在它们之间循环查找所需的文本

  • 使用以下xpath:-

    //td[text()=' TestText']
    

    希望它能帮助您:)

    使用以下xpath:-

    //td[text()=' TestText']
    


    希望它能帮助您:)

    通过使用CSS选择器和C#中的LINQ实现不同的方法:


    在C#中使用CSS选择器和LINQ的另一种方法:

        var elements = WebDriver.FindElements(By.CssSelector("td.TestClass'"]));
        var theElement = elements.FirstOrDefault( e => e.Text.Contains("TestText1"));