Selenium获取元素基本语法

本文详细介绍了使用Selenium WebDriver进行Web自动化测试的各种实用技巧,包括输入框操作、按钮点击、下拉选择、鼠标悬浮及子菜单点击、元素显示判断、JS与jQuery控制、日期选择、alert处理、dialog操作、新窗口切换等,为Web自动化测试人员提供了全面的技术指导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

driver.findElement(By.xxx),可以根据实际项目情况,选择是用id、classname 或者 xpath.....等哪一种方式定位

1.input输入框赋值

driver.findElement(By.className("form-input")).sendKeys("输入框输入内容");

2.radio、button点击

driver.findElement(By.className("button")).click();

3.下拉选择

Select sel=new Select(driver.findElement(By.className("form-input")));
sel.selectByIndex(0);

4.鼠标悬浮到按钮,点击子菜单

WebElement mouse = driver.findElement(By.cssSelector("#navbar img"));//鼠标放上去的菜单Actions action = new Actions(driver);
action.moveToElement(mouse).perform();
Thread.sleep(3000);
driver.findElement(By.cssSelector("#navbar li:nth-child(6)")).click();//需要点击的子菜单

5.判断元素是否显示

driver.findElement(By.className("btn-agree")).isDisplayed();

6.利用js实现元素的控制

JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("document.getElementById('name').value='姓名'");

7.利用jquery实现元素的控制

web页面一般都有加载jquery库,所以就不用在脚本中加载了,直接使用jquery就好

JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("$('#name').val('姓名')");

8.时间、日期选择控件处理方法

//先去掉控件的不可写属性,然后再当做一般的输入框赋值
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("document.getElementById('liveTime').removeAttribute('readonly')");
driver.findElement(By.id("liveTime")).click();
Thread.sleep(3000);
driver.findElement(By.id("liveTime")).sendKeys(liveTime);

9.alert按钮

Alert confirm = driver.switchTo().alert();
//验证弹框的文字是否与期望的一致
        if (confirm.getText().equals(text)) {
            confirm.accept();
        }

10.操作dialog弹框

driver.findElement(By.className("choosetag-btn")).click();//点击按钮,页面弹出页面
Thread.sleep(3000);
//切换到弹窗页面操作数据
 driver.switchTo().frame("choose_tag_dialog");
Thread.sleep(3000);
 //对弹框页面点击按钮小时候,应该切回到主页面
 driver.switchTo().defaultContent();
Thread.sleep(3000);

11.当前页面弹出一个新的浏览器页面,对新的浏览器页面进行操作

// 获取当前页面句柄
 String handle = driver.getWindowHandle();
// 获取所有页面的句柄,并循环判断不是当前的句柄
for (String handles : driver.getWindowHandles()) {
 if (handles.equals(handle))
      continue;
      driver.switchTo().window(handles);
        }
//之后就可以操作心得浏览器页面的元素了

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值