kx_monitor 发表于 2011-12-10 19:57:04

selenium如何处理alert提示

selenium如何处理alert提示

wn0112 发表于 2011-12-12 09:59:01

selenium私房菜中说用
----------------------------------------
assertAlert(messagePattern);
- 检查JavaScript 是否有产生带指定message 的alert 对话框
- alert 产生的顺序必须与检查的顺序一致
- 检查alert 时会产生与手动点击'OK'按钮一样的效果。如果一个alert 产生了,而你却没有去检查它,selenium会在下个action 中报错。
-------------------------------------------------------
但有错误, 不知道怎么用

kx_monitor 发表于 2011-12-12 10:48:02

回复 2# wn0112


    public void testTest() throws InterruptedException{
                selenium.click("xpath=//td/div/img");
                if(selenium.isAlertPresent()){
                        selenium.getAlert();
                }
                selenium.type("userId", "123456");
                selenium.type("userPwd", "123456");
                selenium.click("xpath=//td/div/img");

        }

上面是我的测试代码,测试可以通过,但是必须去手动点击页面上的alert
网上好多资料说是selenium.getAlert()这个方法是会默认点击OK的

风在指间 发表于 2011-12-12 17:26:20

Alert alert = driver.switchTo().alert();
      alert.accept();\\确认
      alert.dismiss();\\取消
      alert.getText();\\获得提示文字
      alert.sendKeys("content");\\输入文字

kx_monitor 发表于 2011-12-12 19:05:24

回复 4# 风在指间
你的这个driver对象是什么?不是selenium的实例化吧
我的selenium对象当中没有switchTo()这个方法

wn0112 发表于 2011-12-13 10:12:20

本帖最后由 wn0112 于 2011-12-13 10:15 编辑

回复风在指间
你的这个driver对象是什么?不是selenium的实例化吧
我的selenium对象当中没有switchTo( ...
kx_monitor 发表于 2011-12-12 19:05 http://bbs.51testing.com/images/common/back.gif

什么是WebDriver.

   webDriver 不与任何测试框架绑定,可以和junit/ TestNG或者其他平台一起工作。(甚至我想,完全可以把它当作一个独立的工具,和selenium没啥关系的工具)

什么时候用webDriver,用webDriver还要不要selenium server了呢?

在以下的情况用webDriver:

•1. 多浏览器测试,selenium中不支持的浏览器
•2. 多框架,多浏览器窗口,弹出框,警告窗口
•3. 页面导航
•4. 拖动
•5. 基因Ajax的UI元素。

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;

WebDriver driver = new InternetExplorerDriver();

kx_monitor 发表于 2011-12-13 14:18:41

回复 6# wn0112


    谢谢你的回答,对于alert这个弹出框,我已经解决,用的sikuli这个东西

你的对于验证码是如何自动化的吗?sikuli这个东西貌似能把图片中的验证码文字读取出来

wn0112 发表于 2011-12-16 13:59:09

本帖最后由 wn0112 于 2011-12-16 14:18 编辑

回复wn0112


    谢谢你的回答,对于alert这个弹出框,我已经解决,用的sikuli这个东西

你的对于 ...
kx_monitor 发表于 2011-12-13 14:18 http://bbs.51testing.com/images/common/back.gif
我初学selenium,也没接触到需要识别验证码图片。
在别的论坛上看到过有人说Selenium对于验证码无解...
Sikuli更是不了解了,只听说它是以控件截图方式来完成自动化测试操作。
它能识别出验证码吗?要知道有些验证码肉眼都经常识别错误,何况用软件。
主要是验证码图片上太多不相关的色彩和线条。
有那种把图片上的文字抓出来的工具,但验证码上的文字,感觉困难。

话说回来,验证码不就是为了防止某些“不法份子”用“自动化”的形式搞破坏吗?如果验证码被你自动化了,验证码也失去意义了。

想BAO 发表于 2012-4-12 22:40:24

回复 4# 风在指间

请教:webdriver处理弹出alert框处理:
      Alert alert= driver.switchTo().alert();
      System.out.println(alert.getText());
      alert.accept();
       但是confirm框要怎么处理啊?我不知道用什么方法捕获confirm弹出框!!!急急急~~~~~
       救救小命啊!!

snakeshiy 发表于 2012-4-13 11:51:42

回复wn0112


    public void testTest() throws InterruptedException{
                selenium.click("xpath= ...
kx_monitor 发表于 2011-12-12 10:48 http://bbs.51testing.com/images/common/back.gif

getAlert()方法是会默认点OK的,如果在getAlert()后再加一个isAlertPresent()会返回False
页: [1]
查看完整版本: selenium如何处理alert提示