赞
踩
自动化测试是指将人为的软件测试转换成自动化,让机器(也就是代码)来进行自动测试。自动化测试包括UI自动化,接口自动化,单元测试自动化。
Java 单元测试一般在 IDEA 中使用 Junit 框架进行测试,目的是为了验证一个类中的方法是否符合预期,代码编写是否正确。在这里介绍 SpringBoot 整合 Junit5 的单元测试,例如当我们需要测试一个类中的方法是否正确时,需要在 test 目录中创建 测试类:
快捷创建测试类:
通过 Alt + Insert ,选择 Test 创建测试类:
在测试类中,对于项目/业务中类的方法进行测试时,都需要使用 @Test 注解进行修饰,如下:
Junit 一些注意事项:
- 测试方法必须使用 @Test 修饰
- 测试方法必须使用public void进行修饰(可以是静态方法,即 static 修饰),不能带参数
- 测试类一般使用Test作为类名的后缀
- 测试单元中的每个方法必须可以独立测试,方法间不能有任何依赖
- 测试代码的包应该和被测试代码包结构保持一致
常用注解(Junit5):
在这里简单介绍如何使用 Postman 进行接口测试(例如测试腾讯视频中的接口)
对于 UI 自动化测试本文主要讲如何使用 Selenium 框架对 Web UI 进行自动化测试。
Selenium是web应用中基于UI的自动化测试框架,支持多平台、多浏览器、多语言。
本文将基于 Selenium + Java 开展对自动化测试的学习。
原理:
从原理图中看出,既然要通过自动化代码操控浏览器就需要一个"媒介",那么首先就需要下载这样的一个媒介,来通过媒介操控浏览器。
在这里我使用的是 Chrome 浏览器(推荐使用),就需要下载一个 Chrome 浏览器的 webdriver 浏览器驱动,在下载的过程中需要注意浏览器的版本号与驱动的版本号相对应。Chrome 浏览器驱动传送门
上图就是驱动的版本,找到与你的 Chrome 浏览器相对应的版本即可,例如你的浏览器版本是 114.0… 就可以下载以 114.0 开头的驱动。若此页面没有与你浏览器对应的版本号,可以点击可用性信息中心,如下:
点击之后的界面如下图:
然后找到相对应的版本下载:
下载完成后解压即可:
分为两种,根据实际情况进行配置:
第一种:Java 环境变量已经配置
那么只需要将 chromeddriver.exe 放到你的配置的 Java JDk bin 目录下即可。
例如:
第二种:没有配置 Java 环境变量
则需要针对刚才下载好的驱动进行配置
首先通过 IDEA 创建一个 Maven 项目,在创建好的 Maven 项目 pom.xml 里面配置 Selenium 依赖:
<dependencies>
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
</dependencies>
然后就只需要正常编写测试代码即可。例如:通过 Selenium 框架打开 Chrome 浏览器进入百度搜索页面,并在输入框中输入指定内容进行搜索
private static void test2() throws InterruptedException {
// 创建驱动
WebDriver webDriver = new ChromeDriver();
// 打开百度
webDriver.get("https://www.baidu.com");
// 通过 css 选择器找到百度输入框
WebElement element = webDriver.findElement(By.cssSelector("#kw"));
// 在百度搜索框输入内容
element.sendKeys("江边鸟");
// 通过 css 选择器找到搜索按钮 并点击搜索
sleep(3000);
webDriver.findElement(By.cssSelector("#su")).click();
//webDriver.findElement(By.cssSelector("#su")).submit();
// 在输入框中清除 江边鸟
sleep(3000);
webDriver.findElement(By.cssSelector("#kw")).clear();
}
当执行上述代码后:
程序就会将 Chrome 浏览器自动打开,并在百度搜索引擎当中输入 “江边鸟”,然后进行搜索,最后在将输入框中的内容进行清除
上述代码都是 Selenium 框架中的 API ,专门针对 webUI 进行自动化测试,只需要编写自动化代码,剩下的交给程序。对于 Selenium 框架的更多 API 详解,请参考后面的文章。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。