【web自动化】selenium的使用(二)

目录

复选框操作

示例:批量操作对象,比如将页面上所有的checkbox 都勾上

方法:先用标签选择器选择页面上所有的input,然后从中过滤出属性type是checkbox的 并勾选

java 复制代码
List<WebElement> webElements=webDriver.findElements(By.cssSelector("input"));
for(int i=0;i<webElements.size();i++)
{     
    if(webElements.get(i).getAttribute("type").equals("checkbox"))
    {
        webElements.get(i).click();
    }
}

多层框架操作

对于一个web 应用,经常会出现框架(frame) 或窗口(window)的应用,这也就给我们的定位带来了一定的困难,所以我们需要先切换到要定位的元素的框架中去。

方法:

1.定位外层框架 :首先,你需要定位到外层框架。使用driver.switchTo().frame()方法可以切换到框架上下文。你可以通过框架的ID、名称或索引来定位。

2.定位内层框架 :如果页面中有多层嵌套的框架,你可能需要先定位到外层框架,然后再定位到内层框架。同样使用driver.switchTo().frame()方法切换到内层框架上下文。

3.定位框架内的元素:在切换到正确的框架上下文后,你就可以像定位普通元素一样来定位框架内的元素。使用findElement()或其他定位方法来找到你需要的元素。

java 复制代码
// 切换到外层框架
driver.switchTo().frame("outerFrame");

// 切换到内层框架
driver.switchTo().frame("innerFrame");

// 定位框架内的元素并操作
WebElement element = driver.findElement(By.id("elementId"));
element.click();

// 退出内层框架
driver.switchTo().parentFrame();

// 退出外层框架,回到默认页面上下文
driver.switchTo().defaultContent();

下拉框操作

首先要定位到下拉框的元素,然后选择下拉列表中的选项进行点击操

作。通常由两种方法来定位下拉列表,均需创建Select 类

方法一:通过索引(从0开始计数)

方法二:通过下拉框取值

java 复制代码
WebElement webElement=webDriver.findElement(By.cssSelector("#ShippingMethod"));
Select select=new Select(webElement);
 //两种下拉框选择方式
select.selectByIndex(2); //根据按钮选择
select.selectByValue("11.61");

弹窗操作

当浏览器中需要对弹窗进行操作时,通常运用下面几个API

切换到弹窗:switchTo().alert()

确定:switchTo()...alert().accept()

取消:switchTo()...alert().dismiss()

向弹窗中输入文本:sendKeys()

java 复制代码
向上方弹窗中输入hello并确认
webdriver.switchTo().alert().sendKeys("hello");
webdriver.switchTo().alert().accept();
相关推荐
金智维科技官方9 天前
智能体,重构企业自动化未来
人工智能·自动化·agent·智能体·数字员工
梦想的旅途29 天前
企业微信API:外部群自动化推送实战指南
大数据·机器人·自动化·企业微信·rpa
xiaoginshuo9 天前
流程自动化从传统RPA升级到AI Agent,如何匹配合适的自动化方案
人工智能·自动化·rpa
W-琑9 天前
软件测试-自动化测试
功能测试·自动化
牛奶咖啡139 天前
DevOps自动化运维实践_使用再生龙对Linux系统进行备份还原
运维·自动化·devops·linux系统的备份还原·linux系统克隆备份·再生龙
Youngchatgpt9 天前
如何在 Excel 中使用 ChatGPT:自动化任务和编写公式
人工智能·chatgpt·自动化·excel
GAOJ_K9 天前
同步带模组稳定运行的关键
人工智能·科技·自动化·制造
电化学仪器白超9 天前
EC20CEHDLG-128-SNNS调试记录
python·单片机·嵌入式硬件·自动化
xixi09249 天前
selenium IDE——command
selenium·测试工具
志栋智能9 天前
安全超自动化:从被动防御到主动响应的革命
运维·网络·数据库·人工智能·安全·web安全·自动化