2018-12-14

25天

1.testng入门

2018-06-06 testNG入门.jpg

1.1弹框种类(alert)警示框

按钮操作不一样20181214141613.png

1.2(confirm)确认框

tapd_34565402_base64_1544768981_72.png

1.3(prompt)对话框
tapd_34565402_base64_1544769011_65.png

2.1操作 窗口切换

1、切换窗口至弹框

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

2.操作

1.alert警示框

//确认
alert.accept();
//获取提示文本
alert.getText();

2.confirm确认框
//确认
alert.accept();
//取消
alert.dismiss();
//获取提示文本
alert.getText();
3.prompt对话框
//确认
alert.accept();
//取消
alert.dismiss();
//往对话框中填值
alert.sendKeys("内容");
//获取提示文本
alert.getText();

代码

@Test
public void testWindowSwitch(){
driver.get("https://www.taobao.com/");
driver.findElement(By.xpath("//li[@aria-label='查看更多']/a[contains(text(),'女装')]")).click();
sleep(1);
driver.findElement(By.xpath("//li[@aria-label='查看更多']/a[contains(text(),'男装')]")).click();
sleep(1);
driver.findElement(By.xpath("//li[@aria-label='查看更多']/a[contains(text(),'内衣')]")).click();
sleep(1);
driver.findElement(By.xpath("//li[@aria-label='查看更多']/a[contains(text(),'鞋靴')]")).click();
sleep(1);
//1、获取所有窗口的句柄
Set handles = driver.getWindowHandles();
//2、使用foreach循环遍历set集合中的句柄
for(String h:handles){
//3、根据句柄切换窗口
driver.switchTo().window(h);
sleep(2);
//4、根据窗口标题来判断当前是哪个窗口
if(driver.getTitle().contains("淘宝女鞋")){
//5、结束循环
break;
}
}

窗口切换20181214153213.png

容器

第一种

数组
一维数组
声明格式:

变量类型[] 变量名={值1,值2,值3,值4,值5,...}

或者

变量类型[] 变量名=new 变量类型[数组长度]

使用格式:

变量名[下标];

下标从0开始,最大长度为数组长度减一

举例

//声明
//知道数组内容
String[] strings = {"11","22","333","444"};
//只知道数组长度
String[] strings1 = new String[5];
//使用 []表示取下标,下标从0开始,最大长度为数组长度减一
System.out.println(strings[0]);
//赋值
strings[0]="555";


一维20181214182709.png

第二种二维数组

List
声明

List list = new ArrayList ();

List:接口

<>:泛型

String:每个子元素的类型

list:变量名

=:赋值符

new:关键字,新建

ArrayList:实现类

():构造方法

在列表最后添加数据

list.add("111");

在列表的某个位置添加数据

list.add(1,"444");

list.get(序号);

list.remove(1);

举例

list20181214183158.png
![list20181214183158.png](https://upload-images.jianshu.io/upload_images/14923307-333a0cedb3499888.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

第三种map

新建

Map map = new HashMap ();

存(key不能重复)

map.put("姓名","刘兰兰");


map.get("姓名")


map.remove("姓名");

举例

map20181214184226.png

第四种

Set 集合
新建

Set set = new HashSet <>();

set.add("1111");

set.remove("1111");

只能通过foreach循环遍历

for(String s:set){
System.out.println(s);
}

举例

set20181214184049.png

容器的特性

数组
长度固定

类型固定

可以通过[]取下标

list
内容固定

长度不确定

map
键值对

key不能重复

key和value的类型固定

长度不确定

set
内容确定

长度不确定

数据不能重复

只能通过foreach循环遍历

你可能感兴趣的:(2018-12-14)