以如下页面为例:

http://sislands.com/coin70/week1/dialogbox.htm

示例代码:

pachage com.learningselenium.normalwebdriver;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import org.openqa.selenium.By;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.WebElement;

import org.openqa.selenium.firefox.FirefoxDriver;

import org.openqa.selenium.Alert;

public class testDialogs{

  WebDriver driver = new FirefoxDriver();

  @Before

  publid void setUp() throws Exception{

    driver.get("http://sislands.com/coin70/week1/dialogbox.htm");

  }

  @Test

  public void testAlertDialog() throws Exception{

    WebElement alertButton = driver.findElement(By.xpath("//input[@value = 'alert']"));

    alertButton.click();

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

    System.out.println(javascriptAlert.getText());

    javascriptAlert.accept();

  }

  @Test

  public void testPromptDialog() throws Exception{

    WebElement promptButton= driver.findElement(By.xpath("//input[@value = 'prompt']"));

    alertButton.click();

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

    javascriptPrompt.sendKeys("This is a test of prompt");

    javascriptPrompt .accept();  //确认按钮

    System.out.println(javascriptPrompt.getText());

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

    javascriptPrompt .accept();

    promptButton.click();

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

    System.out.println(javascriptPrompt.getText());

    javascriptPrompt.dismiss();   // 取消按钮

    

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

    System.out.println(javascriptPrompt.getText());

    javascriptPrompt.accept();

  }

  @Test

  public void testConfirmDialog() throws Exception{

    WebElement confirmButton= driver.findElement(By.xpath("//input[@value = 'confirm']"));

    confirmButton.click();

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

    javascriptConfirm.accept();

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

    System.out.println(javascriptConfirm.getText());

    javascriptConfirm.accept();    //确认按钮

    confrimButton.click();

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

    System.out.println(javascriptConfirm.getText());

    javascriptConfirm.dismiss();    // 取消按钮

    

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

    System.out.println(javascriptConfirm.getText());

    javascriptConfirm.accept();

  }

  @After

  public void tearDown() throws Exception{

    driver.quit();

  }

}

[Selenium] 操作 警告框、提示框、确认框的更多相关文章

  1. 15 JavaScript弹窗(警告框alert、确认框confirm、提示框Promt)

    警告框:window.alert().通常用于确认用户可以得到某些信息 <body> <script type="text/javascript" charset ...

  2. js创建弹框(提示框,待确认框)

    ;;} html,body{text-size-adjust:none;-webkit-text-size-adjust:none;-webkit-user-select:none;} a{color ...

  3. odoo开发笔记 -- 异常、错误、警告、提示、确认信息显示

    1.检查业务逻辑中的错误,终止代码执行,显示错误或警告信息: raise osv.except_osv(_('Error!'), _('Error Message.')) 示例代码: #删除当前销售单 ...

  4. selenium操作隐藏的元素 (下拉框类型)

    有时候我们会碰到一些元素不可见,这个时候selenium就无法对这些元素进行操作了.例如,下面的情况: Python 页面主要通过“display:none”来控制整个下拉框不可见.这个时候如果直接操 ...

  5. openerp学习笔记 错误、警告、提示、确认信息显示

    1.检查业务逻辑中的错误,终止代码执行,显示错误或警告信息: raise osv.except_osv(_('Error!'), _('Error Message.')) 示例代码: #删除当前销售单 ...

  6. 四种常见的提示弹出框(success,warning,error,loading)原生JavaScript和jQuery分别实现

    原文:四种常见的提示弹出框(success,warning,error,loading)原生JavaScript和jQuery分别实现 虽然说现在官方的自带插件已经有很多了,但是有时候往往不能满足我们 ...

  7. Selenium系列(九) - 针对alert窗口的处理(警告框、确认框、对话框)

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...

  8. JavaScript 中创建三种消息框:警告框、确认框、提示框。

    网址:http://www.w3school.com.cn/js/js_popup.asp 警告框 警告框经常用于确保用户可以得到某些信息. 当警告框出现后,用户需要点击确定按钮才能继续进行操作. 语 ...

  9. JavaScript 消息框,警告框,确认框,提示框

    1.警告框 警告框经常用于确保用户可以得到某些信息. 当警告框出现后,用户需要点击确定按钮才能继续进行操作. 语法: alert("文本") 2.确认框 确认框用于使用户可以验证或 ...

随机推荐

  1. 生成PDF文档

    byte[] buffer = context.Response.Clear(); context.Response.ClearHeaders(); context.Response.ClearCon ...

  2. 解决Eclipse中SVN版本信息不显示的问题

    eclipse  中使用 svn 插件,原本正常,未作任何更改,最近几天突然eclipse 中查看文件时,文件后面的 版本号 . 文件的状态图标 等等都不见了.以为有插件冲突,卸载了好多其他的相关的插 ...

  3. Google代码风格配置文件(Java)(IDEA/Eclipse)

    官网:http://www.cnblogs.com/EasonJim/p/7837474.html 下载: 安装: IDEA/Eclipse导入相应文件即可. 说明: Google代码风格文件的缩进是 ...

  4. centos6安装debuginfo

    查看内核版本,查找对应的内核rpm文件 [root@localhost ~]#uname -rsp Linux 3.10.0-229.1.2.el7.x86_64 x86_64 去debuginfo. ...

  5. DICOM医学图像显示算法改进与实现——LUT

    引言 随着Ul(超声成像).CT(计算机断层成像).MRI(核磁共振成像).CR(计算机X线成像).电子内窥镜.盯(正电子发射断层成像)和MI(分子影像)等医学影像设备不断涌现,利用计算机对医学影像设 ...

  6. Python基础语法05--函数模块

    Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也 ...

  7. [Javascript] Convert a Callback-Based JavaScript Function to a Promise-Based One

    Sometimes, you might want to convert a JavaScript function that accepts a callback to one that retur ...

  8. JAVA_MyEclipse如何加载JDK JRE

             

  9. Dos 改动IP 地址

    1.改动 ip地址 子网掩码 默认网关 netsh interface ip set address "本地连接" static 192.168.1.23 255.255.255. ...

  10. C#总结复习5(需要进一步复习)

    第十五章 接口 1.接口: C++中允许多继承没有接口的概念.而java与C#中有,因为C#中 是单继承多接口. 所谓的接口,其实和抽象类.方法相似.都只有一个空方法.其本身不可以为基类,但是允许被其 ...