外卖点单与后台系统测试用例

自动化脚本
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();
        }
    }
}

1.简介 1.1目的   本文档是将系统在测试过程出现的问题陈列出来,使得开发人员清楚的知道系统中所存在的问题不足,从而加以改进,使系统更加健壮安全,增强系统的可运行性和可维护性。本文档的读者为开发人员和测试人员。 1. 2范围 本文档从编程人员编写代码开始就能使用,在用户登录系统、用户订餐系统、会员管理系统、订餐信息处理系统、菜式管理系统、系统用户管理系统等六大模块中均适用,在每一个模块都必须进行元测试,到软件完整开发出来后进行综合测试。本文档将会解决测试问题、环境、结果、缺陷和评价等问题。 2. 测试内容 2.1 用户登录模块用户订餐系统会员管理系统订餐信息处理系统菜式管理系统 用户输入ID和密码,如验证无误便可登陆成功,在登陆状态下所做的定购额记入用户总积分。如果用户不登陆或为非会员,则定购额无法记入总积分。 2.2 用户订餐系统 用户首页上显示的菜式图片来选自己喜欢的菜式和饭食,也可以对快餐进行分类查询。选确认后放入虚拟购物车。可选多样菜式。最后在虚拟柜台提交所有定购的物品,定购金额在10元以上才可提交,否则弹出对话框提示定购额不足。 2.3会员管理系统 对注册为会员的用户的信息进行管理。可以每月对会员进行积分排名,星级会员评定,以及对用户资料进行删除。 2.4 订餐信息处理系统 对订餐的信息进行管理和分类。将全天定餐信息显示在服务器端,分记录显示。记录分为两种状态:“未派送”和“已派送”。此系统的操作人员把刚刚送出的“未派送”记录进行标记,该记录则变为“已派送”。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值