java - 降低 Selenium Webdriver 的速度

标签 java selenium-webdriver

我有一个 Selenium 集成测试,可以启动浏览器并检查网上商店是否有任何损坏的功能。然而,整个测试运行得太快,在我什至可以看到哪个页面正在执行之前就完成了。如何降低代码的执行速度。目前我有以下文件实际启动测试。

AbstractSeleniumIt.java

    @Before
    public void setUp() throws Exception {
        urlProp = GenericUtils.loadProperties("url.properties");
        this.BASE_URL = urlProp.getProperty("webstoreUrl");
        xpathProp = GenericUtils.loadProperties("xpath.properties");
        driver = new FirefoxDriver();
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    }

    @After
    public void tearDown() {
        driver.quit();
    }

最佳答案

您可以使用EventFiringWebDriver

WebDriver driver = new FirefoxDriver();
EventFiringWebDriver slowDriver = new EventFiringWebDriver(driver); 
slowDriver.registerListener(new ListenerThatAddsPauses(5, TimeUnit.SECONDS));

您必须编写类ListenerThatAddsPauses,它将扩展AbstractEventFiringListener。在ListenerThatAddsPauses中,您必须重写父类的方法,例如添加所需的暂停。像这样的东西:

@Override
public void beforeClickOn(WebElement element, WebDriver driver) {
   Thread.sleep(timeout);
}

这是一个很棒的example

关于java - 降低 Selenium Webdriver 的速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22726717/

相关文章:

java - 测试时用反射破坏封装有多邪恶?

java 。使用弹出消息 "already running"防止 Jar App 多次运行。 (使用 ServerSocket())

java - WebDriver PhantomJS 无法找到元素,但可以在 Firefox 上正常工作

python - 使用Selenium python自动关闭对话框

javascript - Safari13 webdriverio点击问题

python - Python 中的 Selenium : "NoSuchElementException: Message: no such element: Unable to locate element"

python - 如何使用 "create_web_element"方法

java - 在来自 jni 的 CallStaticObjectMethod 的引用上使用 DeleteLocalRef

java - 可变参数作为 Java 8 中函数的输入参数

java - PropertyUtils 性能