2.26selenium常用api

一.等待

1.线程强制等待

Thread.sleep()

2.隐式等待

driver.manage().timeouts().implicitlyWait(Duration.ofSeconds())

3.显式等待

WebDriverWait foo = new WebDriverWait(driver,Duration.ofSeconds(10));

foo.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector()));

4.总结

是否可以一起使用呢?

时间并不是叠加的,所以不要一起使用

2.等待方法只在当前方法有效

二.信息打印

1.打印标题

getTitle();

返回值是一个String

2.打印当前Url

getCurrentUrl()

点击了超链接之后打开了新的标签页,这对于selenium来说不知道应该展示的页面是什么

三.窗口

selenium对每一个标签页都给了唯一标识,称为句柄

1)获取当前页面的句柄

.getWindowHandle()

返回值是一个String

sulenium还是不知道是哪个只能默认第一个

2)获取所有页面地方句柄

driver.getWindowHandles()

返回值是集合()

可以用set

3.窗口的切换

3.1切换到最新页面

从所有句柄中选择想要跳转到的句柄(页面)

driver.SwitchTo.window(STRING类型)

先获取所有句柄

然后遍历,如果不是首页,就跳到当前页面

最后遍历到最后,就是最新的页面

3.2窗口大小的设置

1)最大化:driver.manage().window().maxmize();

2)最小化:driver.manage().window().minimize();

3)设置指定的尺寸:deiver.manage().window().setSize(new dimension(宽度,高度))单位是mm

四.编译脚本

driver.executeScript()

参数为js语言的字符串

可以在console直接编译

五.导航

selenium里提供了navigate接口来实现页面的导航

打开新的标签页不算

1)前进

driver.navigate().forward()

2)后退

driver.navigate().forward()\

六.弹窗

可以在前端代码里定位到普通的弹窗都可以使用driver.findElement()来定位元素

1)警告弹窗-点击弹窗的确认按钮

对于弹窗警告,就无法定位

需要 引用Alert类

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

z这一步切换到躺床上

然后点击确认

alert.accept();

2)确认弹窗+点击取消按钮

普通弹窗可以直接找到对应位置

alert.dismiss();

七.鼠标,键盘操作

selenium提供了Actions接口

1.鼠标

让鼠标移动到指定的元素上

找元素的返回值类型是webelement

需要先定义action类

调用点击方法对应的ele,ele是什么点击什么

然后调用perform演示方法 不调用就不掩饰

但是不点击

点击指定元素

actions.click(ele).perform()

2)键盘

八.选择框

selenium提供了select接口

1.根据计数

select.selectByIndex();

2.根据value属性来选择

select.selectByValue("10.69")

九.文件的打开

页面中点击文件上传会弹出来系统窗口,selenium不能够操作系统窗口

通过sendKey()方法输入我们想要上传的文件路径以及文件名,就能达到文件上传的操作

用反斜杆表示

猜你喜欢

转载自blog.csdn.net/m0_72618437/article/details/129233516