我有以下代码用于从给定列表中选择一个选项,它通常可以工作,但有时它会在第二个 if 上出现 NoSuchElement 异常而失败。我的印象是,如果它没有找到元素,它就会再次通过循环返回。我相信解释很简单......有人可以启发我吗?
public static void selectFromList(String vList, String vText, IWebDriver driver)
{
for (int sec = 0; ; sec++)
{
System.Threading.Thread.Sleep(2500);
if (sec >= 10) Debug.Fail("timeout : " + vList);
if (driver.FindElement(By.Id(ConfigurationManager.AppSettings[vList])).Displayed) break;
}
new SelectElement(driver.FindElement(By.Id(ConfigurationManager.AppSettings[vList]))).SelectByText(vText);
}