开始使用Selenium WebDriver。当我运行我的测试时,WebDriverWait正常工作,但我得到了:
OpenQA.Selenium.NoSuchElementException {"没有这样的元素:无法找到元素: {\"方法\":\" ID为\" \"选择器\":\" exampleInputEmail1 \"} \ ñ (会话信息:chrome = 54.0.2840.71)\ n (司机信息:chromedriver = 2.25.426923 (0390b88869384d6eb0d5d09729679f934aab9eed), platform = Windows NT 10.0.14393 x86_64)"}
当我调试测试时。
这里的代码失败了:
Driver.Navigate().GoToUrl($"{BaseUrl}user/login");
var wait = new WebDriverWait(Driver, TimeSpan.FromSeconds(3));
wait.Until(d => d.FindElement(By.Id("exampleInputEmail1")));
最后一行抛出。如果我加上30ms的睡眠,就像这样:
Driver.Navigate().GoToUrl($"{BaseUrl}user/login");
Thread.Sleep(30);
var wait = new WebDriverWait(Driver, TimeSpan.FromSeconds(3));
wait.Until(d => d.FindElement(By.Id("exampleInputEmail1")));
它也适用于调试器。他们为什么会有所不同?我试图搜索,但没有找到任何与运行v调试结果相关的内容。谢谢你的任何指示。
相关细节: