基于 SpringCloud 的在线交易平台乐优商城的设计与实现(六)

本文主要是介绍基于 SpringCloud 的在线交易平台乐优商城的设计与实现(六),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

第六章 系统测试

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 语言程序设计, 北京: 机械工业出版社,2009113-150

[2]  厉小军.    Web 编程技术,北京:机械工业出版社, 2009229-348

[3]  贺智明 等.     JavaEE  企业应用开发技术,北京:清华大学出版社,2012:31-106

[4]  朱欣娟 等.    信息系统分析与设计,西安:西安电子科技大学出版社, 200873-94

[5]  江开耀.    软件工程与开发技术, 西安:西安电子科技大学出版社, 2009

[6]  毋国庆 等.    软件需求工程,北京:机械工业出版社, 201038-93

[7]  萨师煊 等.     数据库系统概论, 北京: 高等教育出版社, 2008198-231

[8]  王晓悦.    Java-JDK、数据库系统开发、Web 开发, 北京: 人民邮电出版 社, 2007479-512

[9]  吴亚峰 王鑫磊.    NetBeans-Java 桌面、Web 与企业级程序开发详解,  京:人民邮电出版社, 2007379-407

[10]  鲁晓东等.    JSP 软件工程案例精解[M],北京: 电子工业出版社,2005.

[11]  夏欣等.Java 面向对象编程指南,电子工业出版社, 2005

[12]  []万普勒 著,王海鹏 译.Java  UML 面向对象程序设计,北京: 人民邮电出版社, 2002

这篇关于基于 SpringCloud 的在线交易平台乐优商城的设计与实现(六)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/945839

相关文章

C#借助Spire.XLS for .NET实现在Excel中添加文档属性

《C#借助Spire.XLSfor.NET实现在Excel中添加文档属性》在日常的数据处理和项目管理中,Excel文档扮演着举足轻重的角色,本文将深入探讨如何在C#中借助强大的第三方库Spire.... 目录为什么需要程序化添加Excel文档属性使用Spire.XLS for .NET库实现文档属性管理Sp

Python+FFmpeg实现视频自动化处理的完整指南

《Python+FFmpeg实现视频自动化处理的完整指南》本文总结了一套在Python中使用subprocess.run调用FFmpeg进行视频自动化处理的解决方案,涵盖了跨平台硬件加速、中间素材处理... 目录一、 跨平台硬件加速:统一接口设计1. 核心映射逻辑2. python 实现代码二、 中间素材处

Java方法重载与重写之同名方法的双面魔法(最新整理)

《Java方法重载与重写之同名方法的双面魔法(最新整理)》文章介绍了Java中的方法重载Overloading和方法重写Overriding的区别联系,方法重载是指在同一个类中,允许存在多个方法名相同... 目录Java方法重载与重写:同名方法的双面魔法方法重载(Overloading):同门师兄弟的不同绝

Spring配置扩展之JavaConfig的使用小结

《Spring配置扩展之JavaConfig的使用小结》JavaConfig是Spring框架中基于纯Java代码的配置方式,用于替代传统的XML配置,通过注解(如@Bean)定义Spring容器的组... 目录JavaConfig 的概念什么是JavaConfig?为什么使用 JavaConfig?Jav

Java数组动态扩容的实现示例

《Java数组动态扩容的实现示例》本文主要介绍了Java数组动态扩容的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1 问题2 方法3 结语1 问题实现动态的给数组添加元素效果,实现对数组扩容,原始数组使用静态分配

Java中ArrayList与顺序表示例详解

《Java中ArrayList与顺序表示例详解》顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构,:本文主要介绍Java中ArrayList与... 目录前言一、Java集合框架核心接口与分类ArrayList二、顺序表数据结构中的顺序表三、常用代码手动

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Spring Boot Interceptor的原理、配置、顺序控制及与Filter的关键区别对比分析

《SpringBootInterceptor的原理、配置、顺序控制及与Filter的关键区别对比分析》本文主要介绍了SpringBoot中的拦截器(Interceptor)及其与过滤器(Filt... 目录前言一、核心功能二、拦截器的实现2.1 定义自定义拦截器2.2 注册拦截器三、多拦截器的执行顺序四、过

Python实现快速扫描目标主机的开放端口和服务

《Python实现快速扫描目标主机的开放端口和服务》这篇文章主要为大家详细介绍了如何使用Python编写一个功能强大的端口扫描器脚本,实现快速扫描目标主机的开放端口和服务,感兴趣的小伙伴可以了解下... 目录功能介绍场景应用1. 网络安全审计2. 系统管理维护3. 网络故障排查4. 合规性检查报错处理1.

JAVA线程的周期及调度机制详解

《JAVA线程的周期及调度机制详解》Java线程的生命周期包括NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING和TERMINATED,线程调度依赖操作系统,采用抢占... 目录Java线程的生命周期线程状态转换示例代码JAVA线程调度机制优先级设置示例注意事项JAVA线程