我有一个这样的实用方法:
public void verifyTitle(int secsToWait) {
new WebDriverWait(driver, secsToWait)
.until(ExpectedConditions.titleIs(title));
}
当它失败时,消息是:
org.openqa.selenium.TimeoutException
等待标题为 2 秒后超时:此处为某些标题构建信息:版本:'2.2.1',修订:'16551',时间:'2012-04-11 21:42:35' 系统信息:os。名称:'Linux',os.arch:'i386',os.version:'3.0.0-16-generic',java.version:'1.7.0_04' 驱动程序信息:driver.version:未知
我找不到提供更好错误消息的 API。我想要的是:
等待标题为 2 秒后超时:此处为某个标题(但标题为:其他标题)
我可以使用如下所示的 try/catch 来做到这一点,但也许还有其他选择?
public void verifyTitle(int secsToWait) {
try {
new WebDriverWait(driver, secsToWait)
.until(ExpectedConditions.titleIs(title));
}
catch (TimeoutException e) {
throw new AssertionError(String.format("Expected page title [%s] but was [%s]", title, driver.getTitle()));
}
}