在selenium framework 2.25中,我看到我们有UnexpectedAlertBehaviour枚举类型,但我不知道如何使用它.
我在你的问题上找到了这部分文档:这对其他人也有用:
v2.25.0
=======
的webdriver:
添加了用于处理BASIC和DIGEST身份验证的API
对话框.目前未在任何驱动程序中实现.
警告用户IE驱动程序将不再使用DLL
下一个版本.
不推荐使用的浏览器特定WebElement子类.
添加了对"requiredCapabilities"的支持到远程webdrivers
并在firefox中实现了对这些的基本支持
驱动程序.未能满足所需的能力将导致a
要抛出的SessionNotCreatedException.
添加了确定应如何处理未处理警报的功能.这由"unexpectedAlertBehaviour"功能处理,该功能可以是"接受","解雇"或"忽略"之一.Java代码应该使用UnexpectedAlertBehaviour枚举.这只在Firefox中实现.
允许在Firefox和中配置本机事件
(实验性地)在IE中使用"nativeEvents"功能.
将受支持的Firefox版本更新为17.
.....
这是源头
package org.openqa.selenium;
public enum UnexpectedAlertBehaviour {
ACCEPT ("accept"),
DISMISS ("dismiss"),
IGNORE ("ignore")
;
private String text;
private UnexpectedAlertBehaviour(String text) {
this.text = text;
}
@Override
public String toString() {
return String.valueOf(text);
}
public static UnexpectedAlertBehaviour fromString(String text) {
if (text != null) {
for (UnexpectedAlertBehaviour b : UnexpectedAlertBehaviour.values()) {
if (text.equalsIgnoreCase(b.text)) {
return b;
}
}
}
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
我看到你使用unexpectedAlertBehaviour来判断警报是否未处理,如果是,那么你将决定如何处理它.
我想它应该是(我的假设):
try{
alert.accept();
}
catch(org.openqa.selenium.UnexpectedAlertBehaviour){
///...blablabla
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19987 次 |
| 最近记录: |