提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
外卖项目测试
前言
该项目是一款内购软件,具体功能有菜品分类,搜索查询,商城,购物车,售后服务等,该系统分为前后台两大功能模块,其中前台包括注册、登录、菜品查询、支付、商品展示等;后台包括:菜品管理,订单管理与统计等。
我将以测试者的角度对该项目进行分析
一、测试计划的制订
通过瀑布模型进行测试计划的进行
整体步骤与测试模型的步骤相同,虽然瀑布模型用来进行产品设计,但进行严格的需求分析与测试点设计也是一项不错的选择
需求分析阶段
- 业务需求:明确苍穹外卖项目需要提供在线点餐、外卖配送、商家管理、用户管理等核心功能,同时要考虑系统的稳定性、性能和安全性,以满足不同用户角色(消费者、商家、配送员)的需求。
- 用户需求:通过用户调研,了解到消费者希望能够方便快捷地浏览菜品、下单支付,查看订单状态;商家需要能够管理菜品信息、接收订单、处理订单;配送员需要能够查看配送任务、导航到商家和用户地址等。
设计阶段
- 总体设计:确定系统的整体架构,采用基于SSM的框架,将系统分为用户服务、商家服务、订单服务、配送服务等多个微服务,以提高系统的可扩展性和维护性。设计数据库的整体结构,包括用户表、商家表、菜品表、订单表等,确定表之间的关系。
- 详细设计:针对每个微服务,设计具体的接口和类,定义方法的参数、返回值和功能逻辑。例如,在订单服务中,设计创建订单、查询订单、更新订单状态等方法。对于数据库表,详细设计字段的类型、长度、约束等,如用户表中的用户名字段,设置为字符串类型。
测试阶段
- 单元测试:对编写的每个函数、方法进行测试,确保其功能的正确性。例如,对订单服务中的创建订单方法进行单元测试,传入不同的参数,验证是否正确创建订单并更新数据库。
- 集成测试:将各个微服务集成在一起进行测试,检查服务之间的接口调用和数据传递是否正常。例如,测试用户下单后,订单服务是否能够正确地与商家服务、配送服务进行交互。
- 系统测试:对整个外卖系统进行全面测试,包括功能测试、性能测试、安全测试等。验证系统是否满足需求规格说明书中的要求,在高并发情况下系统的性能表现是否良好,是否存在安全漏洞。
通过瀑布模型对苍穹外卖项目进行分析,可以使项目的开发过程更加规范化、系统化,有助于提高项目的质量和可维护性,降低项目的风险。但同时也需要注意,瀑布模型的每个阶段都有明确的界限,一旦某个阶段出现问题,可能需要花费较大的成本进行返工。
二、测试需求点分析
测试分为功能测试与非功能测试,针对于用户主要业务地址业务,订单业务,查询业务,购物车业务以及管理端主要业务订单管理业务,菜品管理业务,员工管理业务与登录业务进行着重的测试
非功能性测试进行UI测试,性能测试与兼容性测试,利用Jmeter以及selenium框架进行实施
接口测试独立进行,与Apifox软件结合进行调试
三、设计
1.测试用例设计
通过需求文档确定出用户主要流程的测试点分析,对每个测试点进行正向逆向分析
由于文档面积过于繁琐,现展示一部分作为示例
对用户常用的主流业务以及管理端主流业务进行用例分析,逆向用例过多故使用简洁写法
2.接口设计
由需求文档可分析得出常用的用户端与管理端接口
进行接口调试与准备工作
使用Apifox进行接口管理
四、编码
1.冒烟测试
对每个接口进行基础正向逆向测试确保基础业务可以正常进行
对Controll层,Service层与Mapper层进行简单的业务测试确保代码正常运行
访问用户端与管理端确保页面显示正确
2.UI自动化测试
使用selenium框架对项目的主流测试点,结合之前分析得出的测试计划进行UI自动程序编写
为降低耦合,将测试代码在另一个项目中运行
3.接口测试
根据用例进行接口测试
系统管理后台
员工管理:针对员工登录、退出,信息新增、修改、删除、查找,账号启用 禁用等功能展开测试。
分类管理:对菜品分类与套餐分类的查询、新增、修改、删除功能进行验证。
菜品管理:测试各个分类下菜品信息的查询、新增、修改、删除、启售、停售功能。
套餐管理:验证当前餐厅中套餐信息的查询、新增、修改、删除、启售、停售功能。
订单管理:对移动端订单信息的查询、取消、派送、完成,以及订单报表下载功能进行测试。
数据统计:核实餐厅营业额、用户数量、订单等各类数据统计功能的准确性。
来单提醒:检验有订单时来单消息提醒功能是否正常。
微信登录:测试微信登录功能的实现情况。
商品浏览:验证菜品与套餐信息的浏览功能。
购物车:对添加菜品到购物车、删除购物车商品、清空购物车等功能进行测试。
用户下单:测试下单流程的完整性与正确性。
微信支付:核实微信支付功能的可用性与安全性。
历史订单:验证历史订单的查看、删除功能。
地址管理:测试用户下单地址的管理功能。
4.单元测试
针对主流常用模块进行单元测试
4.性能测试
由于在本机上测试,并发数设置的会小一点
5.兼容性测试
将管理端在不同浏览器上进行运行,进行主流业务的选择,观察是否踹向那异常
6.稳定性测试
在长时间运行过程中,监测系统的运行状态,检查系统是否会出现内存泄漏、资源耗尽等导致系统性能下降或崩溃的问题,确保系统具备良好的稳定性,满足餐饮企业长时间运营需求。
五、测试的运行与测试报告的总结
总结
系统管理后台与小程序端大部分功能模块运行正常,能够满足餐饮企业与消费者的基本使用需求。但仍存在一些功能缺陷,如部分接口参数校验不严格、页面显示与交互逻辑与设计稿存在差异、个别功能操作流程不顺畅等。
功能测试用例执行通过率为 74%,未通过的测试用例主要集中在员工管理、订单管理、购物车等功能模块。针对这些未通过的测试用例,已详细记录问题描述、复现步骤与预期结果.
本次对系统的测试全面覆盖了功能、性能、稳定性等方面。测试结果表明,系统在功能实现上基本满足需求,但存在部分功能缺陷;在性能方面,高负载下表现不佳;在稳定性与安全性方面,存在一定的隐患。综合来看,系统目前还不具备上线条件,需要开发团队针对测试中发现的问题进行全面修复与优化。