查找元素的类名c# Selenium webdriver

本文关键字:Selenium webdriver 元素 查找 | 更新日期: 2023-09-27 17:52:46

我是c#的新手,我正试图通过它们的类名获得元素。我找到了一种使用Xpath的方法,但我相信还有更优雅、更合适的解决方案。

首先我"抓取"表,然后我通过Xpath查找元素。我要做的是定义一行。例如entireRow,并通过它将不同类型的元素分配到两个和中。如果元素为"devColorLower"类,则+=devColorLower值,如果元素为"devColorUpper"类,则++devColorUpper值。

下面是我使用的代码:

// Grab the table
var tbody1 = driver.FindElements(By.XPath(".//*[@id='DataTableID']/tbody/tr"));
// Grab the color values
foreach (var row in tbody1)
{
    var entireRow = row.FindElements(By.XPath(".//td"));
    var shortfall = row.FindElements(By.XPath(".//td[@class='DataTableTD devColorLower']")); 
    var exceedence = row.FindElements(By.XPath(".//td[@class='DataTableTD devColorUpper']"));
}

查找元素的类名c# Selenium webdriver

我得出结论了。我为每个循环添加了第二个

 foreach (var cell in entireRow) // Defines a foreach cycle that check every cell in the row - entireRow
            {
                String cellClass = cell.GetAttribute("class"); // Gets the class 
                if (cellClass == ("DataTableTD devColorLower")) { ..code}