control层alert弹出框乱码_java selenium操作弹出对话框

bf25c31f04bab492c78cfd5f064c0283.png

Selenium 是目前用的最广泛的Web UI 自动化测试框架。它支持的语言有:python、Java、ruby、JavaScript等,并且几乎能在主流的浏览器上运行。

3113547f0dceb4b798953baf378cd27d.png

Selenium2.0、Selenium3.0主要由三大部分组成:SeleniumIDE、Selenium WebDriver、Selenoium Grid。

什么是selenium?它具有以下几个特点:

一套软件工具,用来支持不同的自动化测试方法

开源软件:可以根据需要来增加重构工具的某些功能

跨平台:linux , windows mac

核心功能就是可以在多个浏览器上进行自动化测试

支持多种编程语言

目前已经被google , 百度, 腾讯等公司广泛使用

能够实现类似商业工具的大部分功能,并且还实现了商业工具不能支持的功能

建议大家整体学习整套工具, 将来好选择适合自己测试目的的测试工具。

介绍完selenium,下面我们言归正传,如何用java selenium操作弹出对话框?

Web 开发人员通常需要利用JavaScript弹出对话框来给用户一些信息提示, 包括以下几种类型:

对话框类型

警告框: 用于提示用户相关信息的验证结果, 错误或警告

20c7b294c98ffedb09dee13f1bdb4db8.png

提示框: 用于提示用户在当前对话框中输入数据,一般需要用户单击取消或者确认按钮

15655596a8ce2a82d7af8525cde16342.png

确认框:用于提示用户确认或者取消某个操作,一般需要用户单击取消或者确认按钮

0409b034838e417099a9e2de4dbfddf1.png

测试页面

用如下页面为例进行讲解,包括了警告框,提示框,确认框

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

6c82fae1e68c0e002224b3bf54d57b3e.png

Selenium 操作对话框的代码

// 警告框

public static void testAlert(WebDriver driver)

{

String url="http://sislands.com/coin70/week1/dialogbox.htm";

driver.get(url);

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

alertButton.click();

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

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

javascriptAlert.accept();

}

// prompt 提示框

public static void testPrompt(WebDriver driver) throws Exception

{

String url="http://sislands.com/coin70/week1/dialogbox.htm";

driver.get(url);

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

promptButton.click();

Thread.sleep(2000);

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

javascriptPrompt.sendKeys("This is learning Selenium");

javascriptPrompt.accept();

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

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

javascriptPrompt.accept();

Thread.sleep(2000);

promptButton.click();

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

javascriptPrompt.dismiss();

Thread.sleep(2000);

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

javascriptPrompt.accept();

}

// confirm 确认框

public static void testConfirm(WebDriver driver) throws Exception

{

String url="http://sislands.com/coin70/week1/dialogbox.htm";

driver.get(url);

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

confirmButton.click();

Thread.sleep(2000);

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

javascriptConfirm.accept();

Thread.sleep(2000);

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

javascriptConfirm.accept();

}

结束语:

  本文针对操作弹出对话框的基本应用进行演示,当然了在实际的自动化测试实践中,对于测试人员而言更需要加强编程基本功,提升测试技术能力,更加灵活的应用各种基础技术。

声明:本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值