【Selenium】等待元素出现之后再消失,譬如Loading icon

阅读: 评论:0

【Selenium】等待元素出现之后再消失,譬如Loading icon

【Selenium】等待元素出现之后再消失,譬如Loading icon

界面上有些元素是要先等它出现,再等它消失,譬如loading icon

等多个loading icon出现后消失

    public void waitForLoadingIconDisappearInDialog(WebDriver driver) {System.out.println("Wait for loading icons display in dialog or widgets.");Function<WebDriver, Boolean> waitFn = new Function<WebDriver, Boolean>() {@Overridepublic Boolean apply(WebDriver driver) {try {for (WebElement el : driver.findElements(By.cssSelector("div.win-bd-mask[style*='display: block'] div.win-bd-mask-waiting"))) {if (el.isDisplayed()) {System.out.println("Loading icon display in dialog or widgets.");return false;}}}catch (Exception ex) {return true;}return true;}};WebDriverWait wait = new WebDriverWait(driver, 120, 1000);wait.withMessage("Loading icons should disppear in dialog or widgets in 120s");wait.until(waitFn);System.out.println("Loading icons disspear in dialog or widgets.");}

等一个loading icon 出现后消失

public void waitForLoadingIconDisappearInNewWebPage(WebDriver driver) {System.out.println("Wait for loading icon display in new web page.");final By cssSelector=By.cssSelector("div.x-mask-msg");Function<WebDriver, Boolean> waitFn = new Function<WebDriver, Boolean>() {public Boolean apply(WebDriver driver) {try{if(driver.findElement(cssSelector).isDisplayed()){System.out.println("Loading icon display in new web page.");return false;}}catch(Exception e){return true;}return true;}};WebDriverWait wait = new WebDriverWait(driver, 120, 2000);wait.withMessage("Loading icon should disappear in new web page in 120s");wait.until(waitFn);System.out.println("Loading icon disappear in new web page.");}

等显现的元素变成隐藏,相对要简单一些,先等它可见,再等它不可见

public void waitForLoadingIconDisappearInHomePage(WebDriver driver) {this.waitForElementVisible(driver, By.cssSelector("div#window-waiting-box"), 20 ,"Waiting box should display in 20s");this.waitForElementNotVisible(driver, By.cssSelector("div#window-waiting-box"), 120 ,"Waiting box should disppear in 120s");}

 

本文发布于:2024-02-04 16:05:04,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170711232756991.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:元素   Selenium   icon   Loading
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23