登录
首页 >  文章 >  java教程

Selenium 如何等待页面加载

来源:dev.to

时间:2024-11-25 08:55:02 348浏览 收藏

偷偷努力,悄无声息地变强,然后惊艳所有人!哈哈,小伙伴们又来学习啦~今天我将给大家介绍《Selenium 如何等待页面加载》,这篇文章主要会讲到等等知识点,不知道大家对其都有多少了解,下面我们就一起来看一吧!当然,非常希望大家能多多评论,给出合理的建议,我们一起学习,一起进步!

Selenium 如何等待页面加载

我正在尝试使用 selenium 创建一个应用程序。我的功能如下。从某些下拉菜单中进行选择后,页面上会出现带有“加载”类的动画,在此期间所有元素都会被删除,然后在加载完成后重新添加。我设法按照我分享的方式处理这个问题,但我相信有一种更有效的方法来做到这一点。你能帮我一下吗?

selectelement:使用 ul 和 li 创建的菜单定义了 javascript 事件。

optionelement:在 selectelement 部分中进行选择后,将加载 select 内的选项,并检查它们是否已加载。

optiontoselect:由 selectelement 中的 li 元素组成。

isloadingexpected:进行一些选择后,页面上会出现加载动画,我无法阻止。

这是视频和我想做的事情(出于隐私原因进行了模糊处理):https://streamable.com/p47d93

selectitem(elements.xxx.xpath, elements.xxxoptions.xpath, aaa.bbb.xpath, 0);

`public static void selectitem(string selectelement, string optionelements, string optiontoselect, int isloadingexpected) throws exception {
webdriverwait waitelement = new webdriverwait(chromedriver, duration.ofseconds(10));

    if (isLoadingExpected == 1) {
        waitElement.until(ExpectedConditions.visibilityOfElementLocated(By.className("loading")));
        waitElement.until(ExpectedConditions.invisibilityOfElementLocated(By.className("loading")));
    }

    WebElement selectWebElement = waitElement.until(ExpectedConditions.elementToBeClickable(By.xpath(selectElement)));
    waitElement.until(ExpectedConditions.numberOfElementsToBeMoreThan(By.xpath(optionElements), 1));
    selectWebElement.click();

    WebElement optionWebElement = waitElement.until(ExpectedConditions.elementToBeClickable(By.xpath(optionToSelect)));
    optionWebElement.click();
}`

今天关于《Selenium 如何等待页面加载》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:dev.to 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>