c# - Selenium C# 表 - 读取每个值并添加它们并作为列表返回
问题描述
我可以读取表值但我无法在 foreach 循环中添加值并将它们返回为List<string>
.
请分享您的方法,将很有帮助
IWebElement tableElement = driver.FindElement(By.XPath("//div[@id='table']"));
IList<IWebElement> tableRow = tableElement.FindElements(By.TagName("tr"));
IList<IWebElement> rowTD;
foreach (IWebElement row in tableRow)
{
rowTD = row.FindElements(By.TagName("td"));
//add the values in list??
}
return list
在此之后如何将 td 文本值添加到List<string>
? 我希望这个函数返回列表。
解决方案
我猜您正在尝试将所有表数据元素作为字符串列表返回。如果您想坚持仅获取 td 元素文本的类似方法,那么我会执行以下操作:
IWebElement tableElement = driver.FindElement(By.XPath("//div[@id='table']"));
IList<IWebElement> tableDataElements = tableElement.FindElements(By.TagName("td"));
var reults = new List<string>();
foreach (IWebElement tableDataElement in tableDataElements)
{
var tableData = tableDataElement.Text;
reults.add(tableData);
}
return reults;