做过两年自动化测试的小伙伴说web自动化测试真的不难,无非就是一些浏览器操作,页面元素操作,常规的情况很容易处理,再学一学特殊元素的处理,基本就能应付项目的测试了。
这个话倒没错,但是真正要学好自动化测试,深入自动化,并不是那么简单。首先你得懂原理吧,原理不懂,你就不知道怎么解决一些异常情况,也无法完成拓展。其次你得学会写自己的测试框架吧,一个项目写了100个测试类,都是零散的脚本,没有任何设计而言,都是纯粹的业务代码,那我可以说,换了项目你这些脚本就成了垃圾,因此,我们要做自动化就要学会自己去实现自动化测试框架,乃至于自动化测试平台。
下面一段代码实现了一个很简单的功能:
1.打开浏览器
2.访问页面“”
3.定位到页面的搜索框
4.输入查询数据
5.定位搜索按钮
6.点击搜索按钮,完成搜索
代码如下图:
package web.demo;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Test;
public class Demo1 {
@Test
public void test(){
//设置可执行的驱动文件路径
System.setProperty("webdriver.gecko.driver", "src/test/resources/geckodriver.exe");
//创建火狐驱动对象
WebDriver driver = new FirefoxDriver();
//访问腾讯课堂首页
driver.get("https://ke.qq.com/");
//定位页面的搜索框
WebElement searchInputBox = driver.findElement(By.id("js_keyword"));
//往搜索框输入数据
searchInputBox.sendKeys("柠檬班");
//定位到搜索按钮
WebElement searchButton = driver.findElement(By.id("js_search"));
//点击搜索
searchButton.click();
}
}