我需要按类查找页面中的所有元素并单击它们,然后在每个元素中,我需要按类查找所有其他元素并单击,我该如何以简单的方式执行此操作?我尝试在foreach循环中使用foreach循环,但它无法正常工作
var select2arrow = driver.FindElements(By.ClassName("select2-arrow"));
foreach (IWebElement element in select2)
{
try
{
element.Click();
var select2title = driver.FindElements(By.ClassName("title"));
foreach (IWebElement element in select2title )
{
try
{
element.Click();
}
}
}
catch (Exception ex)
{
if (TestRunner.LogTestReports)
{
driver.SaveScreenshot(ex);
}
}
}
答案 0 :(得分:6)
问题源于您使用相同名称element
作为两个循环的迭代器的事实。你也打破了try-catch块。
答案 1 :(得分:3)
除@Gnqz答案外,在foreach (IWebElement element in select2)
中,当元素位于select2
时,您会迭代select2arrow
。
内部catch
区块中也没有try
。