隐式等待执行什么操作?
隐式是执行中每一步测试的默认等待时间。因此,如果我们设置十秒钟的隐式等待,则每一步测试都将等待指定时间,然后采取行动并进入下一步。
隐式等待是一种动态等待,这意味着如果等待时间为十秒钟,而下一个操作将作用于第五秒钟的 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(); } }
广告