http://hi.baidu.com/janice515/item/bce536bb136e8441bb0e120f

摘上面:

一般正常情况下会报错,如 no alert is  active  目前未找到alert

如果没有出现alert

1、页面未加载完成,alert没加载出来

2、页面加载完,但获取不到alert

针对第一种情况:

解决的办法可能是:

a、加上页面加载时间

针对第二种情况:

解决的办法可能是:

a、代码写的是否正确

b、iframe是否已跳出

建议大家写一个公共方法,来进行判断alert是否存在;

目前webdriver已经可以不用js的方式来调取,可以使用本身封装好的方法;

如下所示

public static Alert waitForAlert(WebDriver driver, int seconds)

{

    Wait<<b
style="color: black; background-color: rgb(255, 102,
255);">WebDriver
> wait = new WebDriverWait(driver, seconds);

return wait.until(new AlertAvailable());

}

private static class AlertAvailable implements ExpectedCondition<<b
style="color: black; background-color: rgb(160, 255,
255);">Alert>
    {

private Alert alert = null;

       @Override

public Alert apply(WebDriver driver) {

Alert result = null;

if (null == alert)

{

alert = driver.switchTo().alert();

}

try {

alert.getText();

result = alert;

} catch (NullPointerException npe)

{

logger.error(npe);

}

return result;

} }

commonJava.waitForAlert(driver,10).accept(); 调用这个方法就可以了

当然我的问题也就解决了~

webdriver 获取alert 提示no alert is active的更多相关文章

  1. Vue axios异步获取后台数据alert提示undefined

    记录一个小问题,关于分页查询套餐 前台通过axios异步请求获取后台数据alert弹出数据提示undefined 下面有三个bean PageResult /** * 分页结果封装对象 */ publ ...

  2. 利用selenium webdriver点击alert提示框

    在进行元素定位时常常遇到这样的alert框: 那么该如何定位并点击确定或取消按钮呢?stackoverflow上找到了这个问题的答案. OK, Show you the code: driver.fi ...

  3. 修改js confirm alert 提示框文字的简单实例

    修改js confirm alert 提示框文字的简单实例: <!DOCTYPE html> <html> <head lang="en"> & ...

  4. jquery仿alert提示框、confirm确认对话框、prompt带输入的提示框插件[附实例演示]

    jquery仿alert提示框.confirm确认对话框.prompt带输入的提示框插件实例演示 第一步:引入所需要的jquery插件文件: http://www.angelweb.cn/Inc/eg ...

  5. 经验总结:WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法

    经验总结:WebBrowser自动点击弹出提示框alert.弹出对话框confirm.屏蔽弹出框.屏蔽弹出脚本错误的解决办法 网上有好多解决方法,可是不一定好使,本人经过多次试验,针对WebBrows ...

  6. 纯手画WinForm的Alert提示弹出框

    纯手画WinForm的Alert弹框 一.窗体设置 设置以下属性: 属性名 属性值 说明 AutoScaleMode None 确定屏幕分辨率或字体更改时窗体如何缩放 BackColor 103, 1 ...

  7. webdriver 获取页面response

    在selenium webdriver实现自动化抓取数据过程中,发现无法从webdriver获取页面response 查来查去最终在 stackoverflow 上找到了这一篇文章 文章中说:webd ...

  8. 运行git提示xcrun: error: invalid active developer path错误

    运行git提示xcrun: error: invalid active developer path错误 是xcode的原因 运行如下命令解决: xcode-select --install

  9. JS 提示框 alert()、confirm()、prompt()的三者的区别

    使用消息框 使用警告.提示和确认 可以使用警告.确认和提示消息框来获得用户的输入.这些消息框是 window 对象的接口方法.由于 window 对象位于对象层次的顶层,因此实际应用中不必使用这些消息 ...

随机推荐

  1. 在Android项目中引入MuPdf

    由于公司手机App要加入一个附件查看功能,需要查看PDF文件,在网上找了许多第三方工具,最后选择了MuPDF. 更多第三方工具可以查看大神总结的:http://www.cnblogs.com/poke ...

  2. c++模板使用出错情况error LNK2019: unresolved external symbol "public: float __thiscall Compare<float>::min(void)" (?min@?$Compare@M@@QAEMXZ) referenced in function _main

    将类模板在头文件中定义,类的成员函数在头文件中声明,头文件中只留下接口,函数的实现在另一个.cpp文件中,这样编译出来错误error LNK2019: unresolved external symb ...

  3. Java调用第三方dll文件的使用方法 System.load()或System.loadLibrary()

    Java调用第三方dll文件的使用方法 public class OtherAdapter { static { //System.loadLibrary("Connector") ...

  4. LINUX 更新

    sudo apt-get dist-upgrade,更新所有的软件

  5. 字节b换算kb/mb/gb/tb/pb

    public static string HumanReadableFilesize(double size) { string[] units = new string[] { "B&qu ...

  6. EF 连接MySQL 数据库  保存中文数据后乱码问题

    EF 连接MySQL 数据库  保存中文数据后乱码问题 采用Code First 生成的数据库,MySQL数据库中,生成的表的编码格式为***** 发现这个问题后,全部手动改成UTF8(图是另一个表的 ...

  7. linux操作系统-脚本入门

    背景:在使用linux时,经常会写一些linux命令片段,比较麻烦,有经验的程序员会把 这些碎片式的命令写成shell脚本 1.重启tomcat脚本 #!/bin/sh #kill tomcat pi ...

  8. CentOS 6.5 安装Oracle 11G R2问题列表

    1. 文章中写vi/etc/profile #这个很重要 if [ $USER ="oracle" ]; then     if [ $SHELL="/bin/ksh&q ...

  9. 关于KB905474正版验证补丁破解办法 KB905474是个微软操作系统正版/盗版监测间谍软件。更新安装后,右下角有个提示说“系统监测到你的操作系统是盗版”。 如果没有安装的: 在系统提示更新的时候注意看一下,如果包含有“更新KB905474”就去掉“更新KB905474”方框前的勾,点击关闭(注意如果没有去掉那个勾得话,会找不到“关闭”,而是“确定”),在不在提示我该消息前打勾。 如果已经安装

    关于KB905474正版验证补丁破解办法 KB905474是个微软操作系统正版/盗版监测间谍软件.更新安装后,右下角有个提示说“系统监测到你的操作系统是盗版”. 如果没有安装的: 在系统提示更新的时候 ...

  10. 第3天作业 PoEdu MyString实现

    作业要求 代码: #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <cstring> class My ...