0

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

  • 该网站有一个登录名,该登录名已经在使用 Selenium。
  • 登录后只需按下一个按钮。

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

  • InnerExceptionNoSuchElementException。_
  • 但是当我打开 Web 控制台时,我可以看到该按钮。
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();

我试过了:

  • 边缘 (85.0.564.44)
  • 铬 (85.0.4183.83)
  • 火狐(80.0.1)。
4

1 回答 1

-1
  1. 你可以使用 sleep 来延迟交互
  2. 您正在使用 ElementToBeClickable。您还应该使用 ElementToBeVisible 并检查是否也从 isEnabled 函数启用了元素。
于 2020-09-04T13:15:35.723 回答