目录
第六章 系统测试
6.1 功能性测试
6.1.1 商家后台功能测试
6.1.2 前台功能测试
6.2 非功能性测试
6.3 本章小结
结束语
参考文献
前面内容请移步
基于 SpringCloud 的在线交易平台乐优商城的设计与实现(五)
相关免费源码资源
乐优商城
第六章 系统测试
系统测试是整个项目开发生命周期的一个重要环节, 也是系统上线之前 必须要完成的步骤。测试的目的是对系统进行整体检验, 发现系统设计中存 在的 bug 。通过系统测试 ,开发人员能够及时修复和升级 bug,确保系统 在上线运营时能够完成用户的各项业务需求, 进而提升用户体验和用户粘性。
本章主要从系 统功能性测试和系统非功能性测试两方面进行说明 。
6.1 功能性测试
系统功能性测试包括运营商后台功能测试 、商家后台功能测试和前台功能测 试三个部分。本小节将结合测试用例分别对三个部分进行说明。
6.1.1 商家后台功能测试
表 6-1 是针对商家后台的测试用例 ,主要验证商家登录 、商家登出和 商品管理功能。
表 6-1商家后台测试用例表
用例编号 | 用例名称 | 测试流程 | 预期结果 | 测试结果 | 结论 |
T1 | 商家登录 | 在商家后台 登录页填写 信息登录 | 信息正确可 以登录, 否 则不能登录 | 信息正确进 入商家后台 首页 ,信息 输入错误跳 回到登录页 | 通过 |
T2 | 分类管理 | 商家在后台 管理页面点 击分类管理 | 可以展示分 类查询结果 | 点击完成正 常展示分类 信息 | 通过 |
T3 | 品牌管理 | 商家在后台 管理页面点 击 品 牌 管 理,切换页 容量,切换 页面,在搜 索框键入搜 索条件 | 可以展示品 牌查询结果 | 切换页面正 常展示, 切 换页容量正 常展示, 键 入搜索条件 正常展示 | 通过 |
T4 | 商品新增 | 点击新增按 钮,选择分 类,品牌, 填写商品名 称,商品描 述,规格参 数 | 可以实现商 品保存 | 按照表单要 求 录 入 内 容, 商品信 息正常保存 | 通过 |
T5 | 商品上下 架 | 点击上下架 按钮,实现 对应 spu 以 及 sku 信息 的上下架 | 可以完整对 应实现, 改 变商品的上 下架状态 | Spu 以 及 Sku 对应状 态可以变更 | 通过 |
6.1.2 前台功能测试
前台功能测试包括门户首页功能测试 ,商品搜索功能测试 、商品详情 页功能 测试、用户中心功能测试 、单点登录功能测试、购物车模块功能测 试和秒杀频道 功能测试 。由于篇幅原因, 在此不再全部列出前台全部模块 的功能测试用例 ,以 商品搜索功能测试、用户中心功能测试和购物车模块功能测试为 例进行说明。
表 6-2 是针对商品搜索的测试用例 ,主要验证关键宇搜索 、条件过滤筛选和商品排序功能 。
表 6-2 搜索功能测试用例表
用例编号 | 用例名称 | 测试流程 | 预期结果 | 测试结果 | 结论 |
T6 | 关键字搜 索 | 搜索框内, 输入商品 关键字,点 击搜索 | 可以显 示 出于关 键 字有关 的 商品列 表 和搜索 面 包,搜索面 板中办 好 商品分类, 商品品牌, 规格等 | 成功展 示 出于关 键 字有关 的 商品列 表 和搜索 面 包,搜索面 板中办 好 商品分类, 商品品牌, 规格等 | 通过 |
T7 | 条件过滤 筛选 | 在搜索面 板,按 照 商品分类、 商品品牌、 规格、价格 区间等进 行条件筛 选 | 可以查 询 到条 件过 滤筛选 后 的商品 列 表 | 成功查 询 到条 件过 滤筛选 后 的商品 列 表 | 通过 |
T8 | 商品排序 | 在搜索结 果页, 按 照价格、销 量等对 商 品列表进 行排序 | 可以显 示 排序后 的 商品列表 | 成功显 示 排序后 的 商品列表 | 通过 |
6.2 非功能性测试
系统测试不仅包含功能测试 ,还需要进行非功能性测试,非功能性测 试主要为系统性能测试,
性能测试也可以称作压力测试。由于该电商平台需要实现高并发特性, 所以需要对系统进行压力测试以此检验该电商平台是否能够达到预期的并发要求。
压力测试需要通过压力 测试工具模拟用户真实的并发请求 ,本文设计 的电商平台使用 JMeter 进行压力测试问, JMeter 是阿帕奇开发的基于 Java 的开源压力测试软件, JMeter 设计之初被用于 Web 应用测试 ,后续 经过扩展也被用于其他领域测试。使用 JMeter 不但可以对 Java Servlet 、 Java 对象、数据库和 FTP 服务器等静态资源和动态资源进行测试, 还可以 通过模拟大量并发负载对服务器 、网络或对象的健壮性和性能进行评估 。 JMeter 的聚合报告中,主要提供平均响应时间,错误晌应率等信息。在系 统压力测试过程中,设置每秒并发量从 2000 开始 ,并以 2000 为增量逐 级递增到 12000 并发量 ,循环次数均设置为 3 次。以搜索页的压力测试 为例 ,商品搜索页压力测试结果如表 5-6 所示。
表 6-3商品详情页压力测试结果
并发量 | 循环次数 | 平均响应时间 | 错误响应率% |
2000 | 3 | 589 | 0 |
4000 | 3 | 790 | 0.8 |
6000 | 3 | 930 | 1.2 |
8000 | 3 | 1220 | 2.0 |
10000 | 3 | 1910 | 2.7 |
12000 | 3 | 3150 | 5.9 |
在压力测试过程中, 平均响应时间和错误响应率随着平台并发量的增加 而增加,根据表 5-6 得出并发量平均响应时间折线图如图 6-1 所示
图 6-1 并发量-平均响应时间折线图
图 6-1 中,横坐标为每秒的并发访问请求,纵坐标为平均响应时间 。 通过压力测试结果和并发量平均响应时间折线图可以得出,当并发量在 10000 以内时, 该电商平台的商品搜索页,平均响应时间在 2 秒以下,错 误率在 3%以下,当并发量突破 10000 为 12000 时,该电商平台的商品搜 索页平均响应时间己经在 3 秒以上, 错误率为 5.9% 。由此可见, 该平台己 经达到预期的支撑 10000 的并发访问量,在该并发量下页面平均响应时间 小于 2 秒,响应错误率低于 3%的需求。
6.3 本章小结
本章主要介绍了该电商平台的系统测试 ,包括功能测试和非功能测试。 功能测试又包括商城后台功能测试和前台功能测试。非功能测试主要为系统 性能测试,目的是检验该电商平台是否能够达到预期的并发需求。
结束语
本软件的设计目的是使得中小企业可以直接对外提供线上销售服务,解 决从 0 到 1 的问题。通过这几个月的毕业设计, 我学到很多以前没有学到的 WEB 开发技术, 在软件工程学上更是取得了很大的进步, 同时也基本完成了 乐优商城的设计与开发。系统服务器端, 我采用 MySQL Server5.5 数据库系 统, Elasticsearch 和 MVC 结构来完成系统, 客户端采用浏览器来商品管理 以及搜索下单全过程。这种模式的系统运用方便、操作简单, 效率很高。现 阶段实现了用户注册、商品管理、规格参数管理、分类管理、品牌管理、索 引库管理,搜索展示,搜索提示,加入购物车,下单支付等重要功能。
系统其他功能方面, 本系统提供了一些常用的数据操作, 可以比较完整 的对数据库进行增、删、查、改, 但缺乏必要的统计与分析功能,如销售数据统计分析等。
在整个过程中使我真正体会到了需求分析与总体设计的重要性。由于自 身原因和时间的关系,放弃了一些设想和功能。但是总的来说,这次的毕业 设计对我来说是一次非常难得的锻炼机会。毕业设计使我对几年来所学的专业课知识得到了融会贯通,得到了比任何一门课都大的提高和进步。
参考文献
[1] [美]Y.Daniel Liang. Java 语言程序设计, 北京: 机械工业出版社,2009:113-150
[2] 厉小军. Web 编程技术,北京:机械工业出版社, 2009:229-348
[3] 贺智明 等. JavaEE 企业应用开发技术,北京:清华大学出版社,2012:31-106
[4] 朱欣娟 等. 信息系统分析与设计,西安:西安电子科技大学出版社, 2008:73-94
[5] 江开耀. 软件工程与开发技术, 西安:西安电子科技大学出版社, 2009:
[6] 毋国庆 等. 软件需求工程,北京:机械工业出版社, 2010:38-93
[7] 萨师煊 等. 数据库系统概论, 北京: 高等教育出版社, 2008:198-231
[8] 王晓悦. Java-JDK、数据库系统开发、Web 开发, 北京: 人民邮电出版 社, 2007:479-512
[9] 吴亚峰 王鑫磊. NetBeans-Java 桌面、Web 与企业级程序开发详解, 北 京:人民邮电出版社, 2007:379-407
[10] 鲁晓东等. JSP 软件工程案例精解[M],北京: 电子工业出版社,2005.
[11] 夏欣等.Java 面向对象编程指南,电子工业出版社, 2005
[12] [美]万普勒 著,王海鹏 译.Java 与 UML 面向对象程序设计,北京: 人民邮电出版社, 2002