软件测试实验报告3 | 自动化测试工具的基本操作
整理自博主本科《软件质量与测试》专业课期间自己完成的实验报告,以便各位学习软件测试课程的小伙伴们参考、学习。
实验素材(被测对象):TPshop网站
实验环境:Chrome浏览器
*实验环境与素材请自行配置、获取。
目录
一、实验目的
二、实验内容
三、实验步骤及实验结果
1.测试搜索功能
2.使用Junit对加法计算器程序进行自动化测试
四、实验结果的分析与总结
一、实验目的
1.理解自动化测试的必要性。
2.掌握自动化测试工具的基本用法。
3.为自动化测试实验做好基础。
二、实验内容
1.下载安装selenium并学习使用基本操作,安装配置TPshop网站并进行测试。
2.学习使用Junit自动化测试工具。
3.使用Junit对加法计算器程序进行自动化测试。
三、实验步骤及实验结果
1.测试搜索功能
用例描述:自动化测试在输入框中输入待搜索的关键字,能正确检索出包含该关键字的商品信息。
Selenium代码:
public static boolean testSearchBox(String keyword) throws InterruptedException {WebDriver webDriver = new ChromeDriver();webDriver.get("http://localhost/index.php");// 测试搜索功能WebElement searchBox = webDriver.findElement(By.xpath("//*[@id=\"q\"]"));searchBox.sendKeys(keyword);sleep(3000);WebElement searchButton = webDriver.findElement(By.xpath("//*[@id=\"searchForm\"]/button"));searchButton.click();boolean flg = true;for (int i = 1; i < 10; i++) {String selector = "body > div.shop-list-tour.ma-to-20.p > div > div.stsho.fr > div.shop-list-splb.p > ul > li:nth-child(" + i + ") > div > div.shop_name2 > a";WebElement e = webDriver.findElement(By.cssSelector(selector));System.out.println(e.getText());//如果返回的结果包含“手机”,则测试通过,否则测试不通过if(!e.getText().contains(keyword)){flg = false;break;}}if(flg) {System.out.println("测试通过!");}else{System.out.println("测试不通过!");}return flg;
}
测试结果:
2.使用Junit对加法计算器程序进行自动化测试
import static org.junit.Assert.assertEquals;
import org.junit.Test;public class CalculatorTest {@Testpublic void testAddition() {// 创建 Calculator 实例Calculator calculator = new Calculator();// 定义测试用例int result1 = calculator.add(3, 5);int result2 = calculator.add(-2, 7);int result3 = calculator.add(0, 0);// 验证结果assertEquals(8, result1);assertEquals(5, result2);assertEquals(0, result3);}
}
四、实验结果的分析与总结
在本次实验中我学习了自动化测试的必要性,并学习了两个常用的自动化测试工具Selenium和JUnit。自动化测试可以提高测试效率,节省时间和人力成本;可以提高测试的覆盖率,确保软件质量;可以在开发过程中持续执行,及早发现和修复问题。本次实验中我下载安装了Selenium,安装配置了TPshop网站,并使用Selenium进行测试验证网站功能的正确性。我还使用JUnit对加法计算器程序进行了自动化测试验证了其功能的正确性。
通过本次实验,我掌握了自动化测试工具的基本操作,并为进行更复杂的自动化测试实验做好了基础。