基于 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

相关文章

基于Redisson实现分布式系统下的接口限流

《基于Redisson实现分布式系统下的接口限流》在高并发场景下,接口限流是保障系统稳定性的重要手段,本文将介绍利用Redisson结合Redis实现分布式环境下的接口限流,具有一定的参考价值,感兴趣... 目录分布式限流的核心挑战基于 Redisson 的分布式限流设计思路实现步骤引入依赖定义限流注解实现

SpringBoot实现虚拟线程的方案

《SpringBoot实现虚拟线程的方案》Java19引入虚拟线程,本文就来介绍一下SpringBoot实现虚拟线程的方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录什么是虚拟线程虚拟线程和普通线程的区别SpringBoot使用虚拟线程配置@Async性能对比H

基于Python实现进阶版PDF合并/拆分工具

《基于Python实现进阶版PDF合并/拆分工具》在数字化时代,PDF文件已成为日常工作和学习中不可或缺的一部分,本文将详细介绍一款简单易用的PDF工具,帮助用户轻松完成PDF文件的合并与拆分操作... 目录工具概述环境准备界面说明合并PDF文件拆分PDF文件高级技巧常见问题完整源代码总结在数字化时代,PD

javaSE类和对象进阶用法举例详解

《javaSE类和对象进阶用法举例详解》JavaSE的面向对象编程是软件开发中的基石,它通过类和对象的概念,实现了代码的模块化、可复用性和灵活性,:本文主要介绍javaSE类和对象进阶用法的相关资... 目录前言一、封装1.访问限定符2.包2.1包的概念2.2导入包2.3自定义包2.4常见的包二、stati

Python实现Word转PDF全攻略(从入门到实战)

《Python实现Word转PDF全攻略(从入门到实战)》在数字化办公场景中,Word文档的跨平台兼容性始终是个难题,而PDF格式凭借所见即所得的特性,已成为文档分发和归档的标准格式,下面小编就来和大... 目录一、为什么需要python处理Word转PDF?二、主流转换方案对比三、五套实战方案详解方案1:

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底

解决hive启动时java.net.ConnectException:拒绝连接的问题

《解决hive启动时java.net.ConnectException:拒绝连接的问题》Hadoop集群连接被拒,需检查集群是否启动、关闭防火墙/SELinux、确认安全模式退出,若问题仍存,查看日志... 目录错误发生原因解决方式1.关闭防火墙2.关闭selinux3.启动集群4.检查集群是否正常启动5.

SpringBoot集成EasyExcel实现百万级别的数据导入导出实践指南

《SpringBoot集成EasyExcel实现百万级别的数据导入导出实践指南》本文将基于开源项目springboot-easyexcel-batch进行解析与扩展,手把手教大家如何在SpringBo... 目录项目结构概览核心依赖百万级导出实战场景核心代码效果百万级导入实战场景监听器和Service(核心

idea Maven Springboot多模块项目打包时90%的问题及解决方案

《ideaMavenSpringboot多模块项目打包时90%的问题及解决方案》:本文主要介绍ideaMavenSpringboot多模块项目打包时90%的问题及解决方案,具有很好的参考价值,... 目录1. 前言2. 问题3. 解决办法4. jar 包冲突总结1. 前言之所以写这篇文章是因为在使用Mav

C# async await 异步编程实现机制详解

《C#asyncawait异步编程实现机制详解》async/await是C#5.0引入的语法糖,它基于**状态机(StateMachine)**模式实现,将异步方法转换为编译器生成的状态机类,本... 目录一、async/await 异步编程实现机制1.1 核心概念1.2 编译器转换过程1.3 关键组件解析