我的代码......
当index大于10时,页面有水平滚动条..
在没有滚动的情况下,当尝试查找元素时,它会抛出没有找到这样的元素的异常被抛出。
是否有可能,@ final catch如果找不到元素,则滚动然后再重新开始..
但是我怀疑如果那个元素真的不存在它可能是一个无限循环..请提出一些想法如何解决这个问题?
public string[] GetHeaders(NgWebDriver driver, Table table, string[] IndexMapping)
{
string[] columnHeaders = new string[IndexMapping.Length];
int index = 0;
try
{
foreach (var column in IndexMapping)
{
try
{
columnHeaders[index] = driver.FindElement(By.CssSelector("#columntable" + table.TableID + " > div:nth-child(" + column + ") > div > div:nth-child(1) > span")).Text;
}
catch
{
try
{
columnHeaders[index] = driver.FindElement(By.CssSelector("#columntable" + table.TableID + " > div:nth-child(" + column + ") > div > div:nth-child(1)")).Text;
}
catch
{
columnHeaders[index] = driver.FindElement(By.XPath("//div[@id='columntablegridRecords']/div[" + column + "]/div/div")).Text;
}
}
index++;
}
}
catch (NoSuchElementException nsee) { throw new NoSuchElementException("Element not found", nse); }
return columnHeaders;
}