`

我常用的的处理模态窗口的方法(selenium 2)

阅读更多
主要思想: 使用Java Robot模拟键盘的回车 来替代 selenium的click操作.

1, 以如下的站点为例:https://developer.mozilla.org/samples/domref/showModalDialog.html

2, 当点击open a model dialog 按钮时, 会弹出模态窗口, 此时 按照通常的做法 便是使用 click操作,然后再switch to 弹出的窗口。 这样是行不通的, 因为click 那个button后 ,code被挂起了,这时候要等用户操作模态窗口完毕 才会继续执行下面的code。

3, 解决办法: 先使用sendkeys("") 定位到要点击的button上面,然后使用java robot类来模拟点击键盘的回车键, 如下:
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_ENTER);
Thread.sleep(500); //这里最好是等一下 时间根据实际情况来

然后就可以照常的去 getWindowHandles()来得到窗口的引用了,其他的照旧。 省略省略省略。。。

Hope it helps~!
分享到:
评论

相关推荐

    使用selenium测试showModalDialog模态对话框

    这段代码首先定义了一个JavaScript字符串,用于重写 `showModalDialog` 方法,将其替换为 `window.open` 函数,这样对话框将以非模态窗口的形式打开,Selenium 就可以继续执行并选中这个新窗口。然后,代码模拟点击...

    Selenium处理弹出窗口.docx

    这里介绍了chooseCancelOnNextConfirmation、chooseOkOnNextConfirmation等JavaScript脚本实现的弹出窗口处理函数,selenium会弹出网页窗口,因为它重写了window.open在文件selenium-browserbot.js函数BrowserBot....

    Selenium常用方法

    以下是一些Selenium常用的方法,这些方法对于网页自动化测试至关重要。 1. **文本框 (Text Box)** - `type(locator, value)`: 这个方法用于在指定的文本框内输入文本。例如,`selenium.type("salutationText", ...

    selenium2初学者快速入门

    ### Selenium2初学者快速入门详解 #### 一、引言 随着软件开发的快速发展和规模的不断增大,传统的手动测试方式越来越难以满足高效且频繁的测试需求。为了解决这一问题,自动化测试成为了软件测试领域的重要发展...

    selenium常用方法

    Selenium 常用方法 Selenium 是一个自动化测试工具,提供了许多实用方法来模拟浏览器的行为。下面将详细介绍 Selenium 中的常用方法。 文本框 Text box 在 Selenium 中,可以使用 `type` 方法向文本框中填写信息...

    常用Selenium2Library关键字总结

    常用Selenium2Library关键字总结,用于后期自己学习。

    Selenium 常用的方法 for java

    ### Selenium RC for Java:常用方法详解 #### 一、文本框(Textbox) ...以上介绍了Selenium RC for Java中处理不同类型的UI元素时常用的一些方法及其使用示例。掌握这些方法有助于更高效地进行Web自动化测试。

    selenium2 Java版 使用方法

    ### Selenium2 Java版 使用方法详解 #### 一、引言 随着互联网技术的快速发展,Web应用变得日益复杂,为了确保产品的质量和用户体验,自动化测试成为了一种趋势和必要手段。Selenium作为一款广受欢迎的自动化测试...

    Appium + Selenium 2 入门

    ### Appium + Selenium 2 入门:详细解析 #### 一、Selenium 2 全面解析 **Selenium 2** 是一种强大的工具,它整合了 **Selenium 1** 和 **WebDriver** 的最佳特性,使得在多个浏览器中进行 Web 应用程序的端到端...

    Selenium2 api文档

    Selenium2 API 还提供了控制浏览器行为的功能,如 navigate() 方法用于导航,back() 和 forward() 用于回退和前进,refresh() 刷新当前页面,switchTo() 切换窗口或框架。 **5. 断言和等待** 在测试过程中,断言...

    Selenium 疑问之一:WebDriver 获得弹出窗口(转)

    在本文中,我们将深入探讨如何使用Selenium WebDriver处理网页中的弹出窗口。 ### Selenium WebDriver与弹出窗口 #### 弹出窗口的挑战 当一个网页触发弹出新窗口或标签页时,这对自动化测试构成了挑战,因为默认...

    SELENIUM 2 自动化测试实战 基于PYTHON语言-虫师_python自动测试_selenium2_python_自动

    Python作为其支持的多种编程语言之一,因其简洁明了的语法和丰富的库支持,成为Selenium 2的常用绑定语言。 **一、Selenium 2的核心概念** 1. **WebDriver**: Selenium 2 的核心是WebDriver接口,它提供了与浏览器...

    Selenium2自动化测试实战 基于Python语言

    《Selenium2自动化测试实战——基于Python语言》是一本针对软件测试工程师,尤其是对Web应用程序自动化测试感兴趣的读者的专业书籍。作者虫师在2016年10月编写了这本书,尽管时间已过去数年,但Selenium作为自动化...

    python selenium UI自动化解决验证码的4种方法

    ### Python Selenium UI自动化解决验证码的4种方法 在进行Web自动化测试时,遇到的一个常见问题是验证码的处理。验证码(CAPTCHA)是用来区分用户是人类还是机器的一种测试手段,这为自动化测试带来了挑战。本文将...

    selenium处理模式对话框

    当我们谈论“selenium处理模式对话框”时,这里主要涉及的是如何通过Selenium来处理浏览器中出现的各种对话框,如警告、确认、输入等。 在Web应用程序中,有时会出现模态对话框,比如JavaScript弹出的确认框、警告...

    SELENIUM 2 自动化测试实战 基于PYTHON语言

    【Selenium 2 自动化测试实战 基于PYTHON语言】 Selenium 是一款强大的Web自动化测试工具,尤其适用于浏览器自动化。Selenium 2(也称为Selenium WebDriver)是其发展的一个重要阶段,它提供了对多种浏览器的支持,...

    selenium-2 python安装包

    5. **断言和异常处理**:在编写测试脚本时,可以使用Selenium提供的断言方法来验证预期结果。同时,异常处理机制可以帮助我们捕获和处理在测试过程中可能出现的问题。 6. **跨平台性**:Selenium 2支持多种操作系统...

    selenium selenium selenium selenium selenium selenium selenium selenium

    selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium

    Selenium初学者指南Selenium私房菜selenium2python.7z

    《selenium2python自动化测试实战修订版》是专为Python编程背景的读者准备的,它将详细讲解如何结合Python语言来编写Selenium测试脚本。你将学到如何使用Python的Selenium bindings,创建测试类,处理Web元素,以及...

Global site tag (gtag.js) - Google Analytics