自动化脚本
package org.example.test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.Assert;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
import java.util.concurrent.TimeUnit;
public class tasteTest {
private static final Logger logger = LoggerFactory.getLogger(tasteTest.class);
private WebDriver driver;
@BeforeTest
public void setUp() {
// 初始化WebDriver
driver = new ChromeDriver();
// 最大化窗口
driver.manage().window().maximize();
// 隐式等待,最多等待10秒,提高页面元素加载时的稳定性
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
// 访问localhost:8080
driver.get("http://localhost:81");
}
@Test
public void testLogin() {
try {
// 查找页面上的登录按钮并点击
WebElement button = driver.findElement(By.cssSelector("#app > div > div > div > form > div:nth-child(4) > div > button")); // Selector
button.click();
// 验证点击后是否发生了预期的变化,检查URL是否变更
String expectedUrl = "http://localhost:81/#/dashboard"; // 预期的URL
Assert.assertEquals(driver.getCurrentUrl(), expectedUrl, "按钮点击后未跳转到预期页面");
} catch (Exception e) {
logger.error("登录测试出错", e);
Assert.fail("登录测试失败");
}
}
@Test
public void testEmployeeManagement() {
try {
//点击员工管理
WebElement manage = driver.findElement(By.cssSelector("#app > div > div.sidebar-container > div.el-scrollbar > div.scrollbar-wrapper.el-scrollbar__wrap > div > ul > div:nth-child(8) > div > a > li"));
manage.click();
//查询输入框输入姓名
WebElement searchInput = driver.findElement(By.cssSelector("#app > div > div.main-container > section > div > div > div.tableBar > div > input"));
searchInput.sendKeys("李四1");
//点击查询
WebElement button1 = driver.findElement(By.cssSelector("#app > div > div.main-container > section > div > div > div.tableBar > button.el-button.normal-btn.continue.el-button--default > span"));
button1.click();
// 等待查询结果显示
TimeUnit.SECONDS.sleep(1);
} catch (Exception e) {
logger.error("员工管理测试出错", e);
Assert.fail("员工管理测试失败");
}
}
@Test
public void testDishManagement() {
try {
//菜品管理
WebElement dish = driver.findElement(By.xpath("//*[@id=\"app\"]/div/div[1]/div[2]/div[1]/div/ul/div[6]/div/a/li/span"));
dish.click();
//停售
TimeUnit.SECONDS.sleep(1);
WebElement sell = driver.findElement(By.xpath("//*[@id=\"app\"]/div/div[2]/section/div/div/div[2]/div[3]/table/tbody/tr[6]/td[8]/div/button[3]/span"));
sell.click();
//点击确定
TimeUnit.SECONDS.sleep(1);
WebElement yes = driver.findElement(By.xpath("/html/body/div[3]/div/div[3]/button[2]/span"));
yes.click();
} catch (Exception e) {
logger.error("菜品管理测试出错", e);
Assert.fail("菜品管理测试失败");
}
}
@AfterTest
public void tearDown() {
if (driver != null) {
driver.quit();
}
}
}