1. 测试前的准备工作
- 获取博客系统
- Chrome&webDriver测试环境搭建
- 流程 :
- 熟悉项目
- 针对核心流程设计测试用例(手工测试用例)
- 将手工测试用例转换成自动化测试用例
- 部署
手工测试用例 :
自动化测试用例
代码结构设计 :
- 初始化动作:@BeforeAll 创建驱动
- 退出动作:@AfterAll 退出浏览器
初始化&退出
package blog; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class InitAndEnd { static WebDriver webDriver; @BeforeAll static void SetUp() { webDriver = new ChromeDriver(); } @AfterAll static void TearDown() { webDriver.quit(); } }
登录页面测试
- 输入用户名:zhangsan,密码:123 登录成功
- 测试用例脚本:
/* * 输入正确的账号,密码登录成功 */ @ParameterizedTest @CsvFileSource(resources = "LoginSuccess.csv") void LoginSuccess(String username, String password, String list_url) throws InterruptedException { // 1.打开博客登录页面 webDriver.get("http://localhost:8080/blog_system/login.html"); webDriver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS); sleep(1000); // 2.输入账号 admin WebElement element = webDriver.findElement(By.cssSelector("#username")); element.sendKeys(username); webDriver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS); sleep(1000); // 3.输入密码 123 WebElement element1 = webDriver.findElement(By.cssSelector("#password")); element1.sendKeys(password); webDriver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS); sleep(1000); // 4.点击提交按钮 webDriver.findElement(By.cssSelector("#submit")).click(); sleep(1000); // 5.跳转到列表页 // 6.获取当前页面url webDriver.manage()