如何在使用Java访问Selenium WebDriver中的另一个页面之前等待页面?

Nas*_*her 6 java eclipse selenium selenium-webdriver

我是Selenium的新人.我正在使用Selenium WebDriver和Java.我正在使用eclipse作为IDE.我已经为Login页面编写了一些代码并且运行成功.现在我想在成功登录后转到所需的页面,但是我希望在转换另一页之前等待一段时间.如何在加载另一个页面之前等待页面?

M. *_*bas 12

据我所知,有3种方式:

  1. 隐含等待:(适用于页面上的所有元素)

    driver.manage().timeouts().implicitlyWait(A_GIVEN_NUMBER, TimeUnit.SECONDS);

  2. 显式等待:(适用于特定元素)

    WebDriverWait.until(CONDITION_THAT_FINDS_AN_ELEMENT);

更具体的代码如下:

WebDriverWait wait = new WebDriverWait(driver, 40);
WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.id("someid")));
Run Code Online (Sandbox Code Playgroud)
  1. 使用线程:

    Thread.sleep(NUMBER_OF_MILLIS);

  • WebDriverWait等待元素更好.在这种情况下,它需要识别登陆页面的元素. (2认同)