https://github.com/appium/appium/blob/master/docs/en/commands/session/timeouts/implicit-wait.md
死等:
sleep(10)
一定会等待10秒
隐式等待:
设置一个超时时间,服务端(Appium)在这个时间内会去不断寻找元素,超时找不到时就会报错,他是全局性的
driver.implicitly_wait(10) # 10秒
driver.manage().timeouts().implicitlyWait(6, TimeUnit.SECONDS);
显示等待:
客户端(用例端),设置一个超时时间和一个元素查找条件,在这个时间内不断寻找这个元素,超时找不到时就会报错
WebDriverWait wait = new WebDriverWait(driver,10);
WebElement webElement = wait.until(ExpectedConditions.elementToBeClickable(By.id("someid")));
总结:
隐式等待和显示等待在本质上是一致的
显示等待多了一个指定元素条件超时时间
在使用场景上,可以使用隐式等待来做一个全局的控制
如果某个控件比较特殊,需要更长的时间加载,比如十几秒或者更长,就可以使用显示等待对其进行单独处理
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。