[Selenium] 操作 警告框、提示框、确认框
以如下页面为例:
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] 操作 警告框、提示框、确认框的更多相关文章
- 15 JavaScript弹窗(警告框alert、确认框confirm、提示框Promt)
警告框:window.alert().通常用于确认用户可以得到某些信息 <body> <script type="text/javascript" charset ...
- js创建弹框(提示框,待确认框)
;;} html,body{text-size-adjust:none;-webkit-text-size-adjust:none;-webkit-user-select:none;} a{color ...
- odoo开发笔记 -- 异常、错误、警告、提示、确认信息显示
1.检查业务逻辑中的错误,终止代码执行,显示错误或警告信息: raise osv.except_osv(_('Error!'), _('Error Message.')) 示例代码: #删除当前销售单 ...
- selenium操作隐藏的元素 (下拉框类型)
有时候我们会碰到一些元素不可见,这个时候selenium就无法对这些元素进行操作了.例如,下面的情况: Python 页面主要通过“display:none”来控制整个下拉框不可见.这个时候如果直接操 ...
- openerp学习笔记 错误、警告、提示、确认信息显示
1.检查业务逻辑中的错误,终止代码执行,显示错误或警告信息: raise osv.except_osv(_('Error!'), _('Error Message.')) 示例代码: #删除当前销售单 ...
- 四种常见的提示弹出框(success,warning,error,loading)原生JavaScript和jQuery分别实现
原文:四种常见的提示弹出框(success,warning,error,loading)原生JavaScript和jQuery分别实现 虽然说现在官方的自带插件已经有很多了,但是有时候往往不能满足我们 ...
- Selenium系列(九) - 针对alert窗口的处理(警告框、确认框、对话框)
如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...
- JavaScript 中创建三种消息框:警告框、确认框、提示框。
网址:http://www.w3school.com.cn/js/js_popup.asp 警告框 警告框经常用于确保用户可以得到某些信息. 当警告框出现后,用户需要点击确定按钮才能继续进行操作. 语 ...
- JavaScript 消息框,警告框,确认框,提示框
1.警告框 警告框经常用于确保用户可以得到某些信息. 当警告框出现后,用户需要点击确定按钮才能继续进行操作. 语法: alert("文本") 2.确认框 确认框用于使用户可以验证或 ...
随机推荐
- Eclipse编译无响应
Eclipse编译无响应 Eclipse进程无响应结束进程后,或电脑直接断电后,重新打开Eclipse偶尔重新编译会卡进度,下面有一种解决方案: 首先找到卡进度的工程的名字,关闭Eclipse,找到该 ...
- Linux下的搜索命令grep(转)
一.简介 grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具, ...
- 使用MVP模式重构代码
之前写了两篇关于MVP模式的文章,主要讲得都是一些概念,这里谈谈自己在Android项目中使用MVP模式的真实感受,并以实例的形式一起尝试来使用MVP模式去重构我们现有的代码. 有兴趣的童鞋可以先去阅 ...
- flask如何设置模板语言Jinjia?如何查看路由视图函数映射?
首先flask的模板和静态文件命名必须是确定的templates和static pycharm的模板语言设置
- LeetCode 3_Longest Substring Without Repeating Characters
LeetCode 3_Longest Substring Without Repeating Characters 题目描写叙述: Given a string, find the length of ...
- 网络编程中的常见陷阱之 0x十六进制数(C++字面值常量)
十六进制数相等的推断 请问例如以下程序的输出是神马? #include <iostream> #include <string> using namespace std; in ...
- 我理解的ios和android
近期着手了几个android和ios的项目,如今说下我的几个对他们的理解 从设计上来讲.我觉得android 它更像是个网页,一个页面跳到另外一个页面,两者之间的关联不是非常大,仅仅能传递一些简单的參 ...
- Classification and logistic regression
logistic 回归 1.问题: 在上面讨论回归问题时.讨论的结果都是连续类型.但假设要求做分类呢?即讨论结果为离散型的值. 2.解答: 假设: 当中: g(z)的图形例如以下: 由此可知:当hθ( ...
- RPM安装mysql5.6
原文 http://blog.csdn.net/liumm0000/article/details/18841197 a. 检查MySQL及相关RPM包,是否安装,如果有安装,则移除(rpm –e 名 ...
- 协议的注冊与维护——ndpi源代码分析
在前面的文章中,我们对ndpi中的example做了源代码分析.这一次我们将尽可能深入的了解ndpi内部的结构和运作.我们将带着以下三个目的(问题)去阅读ndpi的源代码. 1.ndpi内部是怎么样注 ...