自动化测试根本:通过元素定位,准确操作测试对象
一、基本元素操作方法
(1)获取网页title,输出结果:getTitle();
(2)获取URL,输出结果:getCurrentUrl()
(3)获取文本信息,输出结果:getText();
(4)获取输入框长度,输出结果:getSize();
(5)判断是否被选中,输出结果:isSelected();
(6)判断是否可见,输出结果:isDisplayed();
(7)判断是否可编辑,输出结果:isEnabled();
(8)文本框键入,输出结果:sendKeys(“sel”);
(9)点击按钮操作:click();
(10)清空文本框内容:clear();
(11)关闭浏览器操作:close();
二、实例测试内容为百度页面,代码如下:
package TestCase;
import java.util.List;
import org.junit.Assert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.testng.annotations.Test;
public class NewTest {
@Test
public void test1() throws InterruptedException {
// 指定IEDriverServer安装位置
System.setProperty("webdriver.ie.driver", "D:\\PYJ-Soft\\Selenium\\IEDriverServer.exe");
// 启动 IE 浏览器
WebDriver driver =new InternetExplorerDriver();
// 打开百度网址
driver.get("http://www.baidu.com");
// (1)获取 getTitle(),并输出结果
System.out.println(driver.getTitle());
// (2)获取当前页面的URL,并输出结果
System.out.println(driver.getCurrentUrl());
// (3)获取页面菜单栏文本信息,并输出结果
List <WebElement> element=driver.findElements(By.xpath(".//*[@id='u1']/a"));
for (int i =0;i<element.size();i++) {
String text = element.get(i).getText();
System.out.println(text);
}
// (4)获取输入框长度信息,并输出结果
System.out.println(driver.findElement(By.id("kw")).getSize());
// (5)判断是否被选中,并输出结果
boolean xz = driver.findElement(By.xpath("//*[@id='u1']/a[1]")).isSelected();
System.out.println("校验是否选中结果:"+ xz);
// (6)判断百度一下按钮是否可见,并输出结果
boolean su = driver.findElement(By.id("su")).isDisplayed();
Assert.assertTrue("校验百度一下按钮是否显示", su);
System.out.println(su);
// (7)判断输入框是否处于可编辑状态,并输出结果
boolean kw = driver.findElement(By.id("kw")).isEnabled();
Assert.assertTrue("校验输入框是否为可编辑状态", kw);
System.out.println(kw);
// (8)定位输入框,键入内容操作(selenium)
driver.findElement(By.id("kw")).sendKeys("selenium");
// (9)定位按钮操作, 点击按钮进行检索内容,并展示
driver.findElement(By.id("su")).click();
// 进入等待时间
Thread.sleep(3000);
//(10)清空键入内容(selenium)
driver.findElement(By.id("kw")).clear();
// 进入等待时间
Thread.sleep(3000);
//(11) 操作完毕,关闭程序
driver.close();
}
}
三、代码运行结果:
[RemoteTestNG] detected TestNG version 7.0.0
Started InternetExplorerDriver server (64-bit)
2.53.0.0
Listening on port 39138
Only local connections are allowed
百度一下,你就知道
https://www.baidu.com/
新闻
hao123
地图
视频
贴吧
学术
登录
设置
更多产品
(500, 22)
校验是否选中结果:false
true
true
PASSED: test1
===============================================
Default test
Tests run: 1, Failures: 0, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 1, Passes: 1, Failures: 0, Skips: 0
===============================================