首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在我的selenium webdriver代码中的每次执行之间等待?

在我的selenium webdriver代码中的每次执行之间等待?
EN

Stack Overflow用户
提问于 2013-06-10 22:13:24
回答 1查看 702关注 0票数 0

有谁知道我如何在selenium代码中的这些操作之间等待,因为当我运行它时,我每次都会得到不同的结果,因为浏览器每次都以不同的速度运行。有没有办法在每个moveByOffSet之间让它等待几秒钟?

代码语言:javascript
复制
 Actions builder2 = new Actions(driver);
    Action moveByOffset = builder2.moveByOffset(100, 200)
            .click()
            .moveByOffset(-150, 0)
            .click()
            .moveByOffset(0, -150)
            .click()
            .moveByOffset(150, 0)
            .click()
            .moveByOffset(0, 150)
            .contextClick()              
            .build();
    moveByOffset.perform();
EN

Stack Overflow用户

发布于 2013-06-10 22:38:35

您可以继承Actions类并覆盖click()方法,包括在其主体内睡眠。

代码语言:javascript
复制
public class MyActions extends Actions {

    public MyActions(WebDriver driver) {
        super(driver);
    }

    @Override
    public Actions click() {
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            //do something
        }
        return super.click();
    }
}

然后只需在测试中使用新类。

代码语言:javascript
复制
Actions actions = new MyActions(driver);

请记住,将睡眠调用放在测试代码中不是一种好的做法。考虑使用WebDriverWait类提供的功能。

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17025947

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档