首页 > 解决方案 > Selenium WebdriverTimeoutException 尽管页面已经加载

问题描述

我是 Selenium 的新手,并尝试以全屏模式自动打开网站。

因此WebdriverTimoutException在倒数第二行抛出 an 。

IWebDriver driver = new EdgeDriver(System.IO.Directory.GetParent(System.IO.Directory.GetParent(Environment.CurrentDirectory).ToString()).ToString() + "\\webdriver");

driver.Navigate().GoToUrl(@"http://examplehomepage.com");

driver.FindElement(By.Id("username")).SendKeys("abc");
driver.FindElement(By.Id("password")).SendKeys("password123");
driver.FindElement(By.TagName("button")).Click();

driver.Manage().Window.FullScreen();

WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(30));

IWebElement element = wait.Until(ExpectedConditions.ElementToBeClickable(By.TagName("button")));

element.Click();

我试过了:

标签: c#seleniumselenium-webdrivergeckodriverselenium-edgedriver

解决方案


  1. 你可以使用 sleep 来延迟交互
  2. 您正在使用 ElementToBeClickable。您还应该使用 ElementToBeVisible 并检查是否也从 isEnabled 函数启用了元素。

推荐阅读