Selenium remotewebdriver超时应该(在这种情况下)返回true

问题描述 投票:0回答:1

我正在使用带有htmlunit的Selenium remotewebdriver并且我需要通过IPS获取一小部分目标URL - 一些URL应该触发IPS来堵塞流量,在这种情况下,该特定测试的正确“通过”场景是请求应该超时。这些是Java,顺便说一句。所以,像这样:

@Test
public void TESTING_IPS_THIS_SHOULD_TRIGGER_ALERT_AND_BLACKHOLE() {
    driver.get("http://testmyids.com");
    //I would like to do a simple assert here that timeout is true;

}

所以我的问题是 - 以类似于assertTrue的方式实现驱动程序超时的最简单方法是什么?

java selenium-webdriver junit htmlunit remotewebdriver
1个回答
0
投票

如果超时,WebDriver会抛出一个TimeoutException。要检查这是否确实发生,只需声明在测试方法的注释中期望​​此异常,如下所示:

@Test(expected = org.openqa.selenium.TimeoutException.class)
public void TESTING_IPS_THIS_SHOULD_TRIGGER_ALERT_AND_BLACKHOLE() {
    driver.get("http://testmyids.com");
    //I would like to do a simple assert here that timeout is true;

}

如果抛出异常,测试将通过。如果没有,错误消息是:

java.lang.AssertionError:预期的异常:org.openqa.selenium.TimeoutException

© www.soinside.com 2019 - 2024. All rights reserved.