我面临一个问题,其中我得到一个异常说UnhandledAlertException模态对话框存在,下面是一些痕迹
组织。openqa。硒。未处理的AlertException:存在模式对话框:此页面要求您确认是否要离开-您输入的数据可能不会保存。构建信息:版本:“2.41.0”,版本:“3192D8A6C4449DC285928BA02479344F5423C58”,时间:“2014-03-27 11:29:39”系统信息:主机:“NCESEPBLRNRE16”,ip:“172.16.137.213”,操作系统。名称:“Windows XP”,操作系统。arch:“x86”,操作系统。版本:“5.1”,java。版本:“1.6.0\u 26”会话ID:bda22089-a586-4cd8-b7ac-778C98581E11驱动程序信息:org。openqa。硒。firefox。FirefoxDriverCapabilities[{平台=XP,acceptSslCerts=true,javascriptEnabled=true,browserName=firefox,rotatable=false,locationContextEnabled=true,版本=23.0,CSSSElectorEnabled=true,databaseEnabled=true,handlesAlerts=true,browserConnectionEnabled=true,nativeEvents=false,WebStorage=true,applicationCacheEnabled=true,takesScreenshot=true}]。反映NativeConstructorAccessorImpl。sun上的newInstance0(本机方法)。反映NativeConstructorAccessorImpl。sun上的newInstance(NativeConstructorAccessorImpl.java:39)。反映授权ConstructorAccessorImpl。java上的newInstance(DelegatingConstructorAccessorImpl.java:27)。lang.reflect。构造函数。org上的newInstance(Constructor.java:513)。openqa。硒。遥远的ErrorHandler。在org上创建throwable(ErrorHandler.java:193)。openqa。硒。遥远的ErrorHandler。在org上创建UnhandledAlertException(ErrorHandler.java:174)。openqa。硒。遥远的ErrorHandler。throwIfResponseFailed(ErrorHandler.java:141)位于org。openqa。硒。遥远的RemoteWebDriver。在org上执行(RemoteWebDriver.java:595)。openqa。硒。遥远的RemoteWebDriver。位于org的findElement(RemoteWebDriver.java:348)。openqa。硒。遥远的RemoteWebDriver。findElementById(RemoteWebDriver.java:389)位于org。openqa。硒。按$ById。findElement(By.java:214)位于org。openqa。硒。遥远的RemoteWebDriver。com上的findElement(RemoteWebDriver.java:340)。阿马迪斯。硒。跑步者SepWebDriverRapper。findElement(sepWebDriverRapper.java:141)
我搜索了一些解决方案,得到了以下代码片段来处理这个问题
//现在,警报出现。Alert Alert=驾驶员。切换到()。警报();警觉的accept();
它工作正常,但警报弹出窗口出现在不同的实例(或不同的场景)中,无法在所有代码块中处理警报
请告诉我是否有任何常用方法,我可以通过一些firefox配置文件设置或任何其他通用方法永久禁用此警报弹出窗口
我正在使用Selenium Java和Firefox浏览器
这可以通过使用Robot类和selenium Alert switch to command的组合来解决。
driver.switchTo().alert();
// invoke Robot class
Robot rb = new Robot();
rb.KeyPress(KeyEvent.VK_ENTER);
rb.KeyPress(KeyRelease.VK_ENTER);
试试这个,让我知道,如果有任何问题。它对我有用,因为我之前遇到过这个问题。
编写如下方法:
protected boolean isAlertPresent() {
try {
driver.switchTo().alert();
return true;
} catch (NoAlertPresentException e) {
return false;
}
}
调用上述方法验证警报是否存在,如下所示:
if(isAlertPresent()){
System.out.println(isAlertPresent());
driver.switchTo().alert().accept();
}
目标:弹出警报。无论它是否显示,我希望它继续。如果显示,则必须选中复选框,然后单击“继续”。如果没有,忽略它。 拦截器:如果警告显示,它将处理的行动和对话将被关闭。但当它不是,硒挂在那里,没有处理条件,当它不显示。 背景:我以前使用过UFT,也许我的逻辑可能是错误的。弹出窗口是应用程序警报(不是系统),因此假设“切换到(),accept()/dismise()将不起作用。我将在登录后立即在下面的登
我正在使用新的JavaFX Alert类(Java1.8_40),并尝试在exibition文本中使用HTML标记,但到目前为止还没有成功。下面是我正在尝试做的一个例子。 有没有人知道这是不是真的可能,给我举个例子? 提前道谢。
在我的应用程序中,当我试图显示自定义的框时,它在android手机中运行良好。现在,当我在android选项卡上安装应用程序时,一切都很好,只有自定义框有问题。不显示。所以我想,我应该检查正常对话框,它工作正常。下面是普通对话框和警报对话框的代码。
正如我们从API 14知道的,下面的模糊已经被弃用 有没有其他方法可以使屏幕模糊我已经尝试过快速模糊
问题内容: 这是一种常见的模式,我看到与异常关联的错误代码存储为静态最终整数。当创建要抛出的异常时,将使用这些代码之一以及错误消息来构造该异常。这导致该方法要抓住它,必须先查看代码,然后决定采取的措施。 替代方法似乎是-为每个异常错误情况声明一个类(尽管相关的异常会从通用基类中删除) 有中间立场吗?推荐的方法是什么? 问题答案: 这是一个很好的问题。我相信绝对有中间立场。 我认为错误代码对于显示质
我在antoher的项目中有完全相同的代码,但它在这里继续崩溃。我有。我真的不确定问题出在哪里。我尝试过切换gradle版本,从切换到。不管怎样,一切都失败了