隐式等待执行什么操作?


隐式是执行中每一步测试的默认等待时间。因此,如果我们设置十秒钟的隐式等待,则每一步测试都将等待指定时间,然后采取行动并进入下一步。

隐式等待是一种动态等待,这意味着如果等待时间为十秒钟,而下一个操作将作用于第五秒钟的 Web 元素,则控件将立即进入下一步测试,而无需等待满十秒钟。

然而,如果元素在第十秒钟之前不可用,则会引发异常。隐式等待简单易用,但有一些缺点,如下所示 −

  • 减慢测试执行时间。

  • 无法捕捉代码中的性能错误。

隐式等待应用于参与测试执行的所有元素,且被视为全局等待。

示例

import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
import java.util.List;
public class Implictwt {
   public static void main(String[] args) {
      System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
      WebDriver driver = new ChromeDriver();
      String url = "https://tutorialspoint.com/index.htm";
      driver.get(url);
      //implicit wait with time in seconds applied to each elements
      driver.manage().timeouts().implicitlyWait(12, TimeUnit.SECONDS);
      //Using id tagname attribute combination for css expression
      driver.findElement(By.cssSelector("input[name=’search’]")).
      sendKeys("Selenium");
      driver.close();
   }
}

更新于: 10-6-2020

567 次浏览

开启您的职业生涯

完成课程以获得认证

开始
广告