校园美食发现:Spring Boot技术的美食社交平台

devtools/2024/9/23 9:53:41/

第五章 软件测试
测试存在于软件开发进程中的最后一个阶段,它可以保证一个软件的开发质量是否符合设计者的初衷,也为程序的正式上线做了最后一道质量检测的工序。软件测试主要是控制各种条件、包括软件输出方式,使用模式和运行环境等,来评估一个系统或应用是否符合设计标准。在软件测试过程中,我们一般刻意的去制造错误和极端条件,不能仅依照正常模式允许,而是多去尝试那些意外的情况。
5.1软件测试的重要性
只有在运行和维护阶段之前经历大量的测试的软件,才能说明它的质量是经得起检验的。最近计算机业界也都一致认为,测试应该存在于软件设计的每个阶段,因为越早发现错误,修复起来就越容易。
实际上,对于一个软件应用,错误是必然存在的,无论使用何种技术或手段,都不可能绝对的排除软件漏洞。测试是随着软件开发一同诞生的,两者是共同发展进步的。实际上,测试可以大幅度的降低维护的成本,如果一个漏洞在开发的早期就被发现,那么修复它的成本远比上线后再修复的成本要低得多。
5.2测试实例的研究与选择
测试有白盒测试和黑盒测试两种方式。
其中,白盒测试是将软件看成一个透明的白盒子,按照程序的内部控制结构和处理技术逻辑来选定测试用例、软件系统测试的逻辑路径及过程需要进行管理测试,又称玻璃盒测试。因此白盒测试需要选择足够多的测试用例,覆盖尽可能多的代码来发现程序中的错误。
黑盒测试,也称为功能测试。它将需软件看作一个黑盒,像一个普通用户一样来模拟软件的使用流程。黑盒测试通过大量的输入边界值或错误数据,来检查是否可产生正确的输出。
本系统测试 主要选择黑盒测试,少量采用白盒测试。通过测试达到以下测试目的:
1.检查各大功能模块的运行,确保其能够正确运行,并检查各页面的完整性,保证页面完整。
2.检查各个接口是否可以正确地输入和输出,保证数据流通稳定可行。
3.检查数据结构,保证其和外部接口没有访问错误,访问顺利。
4.检查原计划的性能需求有没有完成,运行流畅。

本系统的测试用例(部分):
登录部分测试用例
编号 对象 项目 操作 预期结果 结果
1 登录 登录提示 使用正确的账号密码登录 成功登录 预期结果
2 登录提示 使用正确的账号但错误的密码登录 提示密码错误 预期结果
3 登录提示 使用错误的账号登录 提示不存在账户 预期结果
4 登录提示 不输入账号,点击登录 提示输入账号 预期结果
5 登录提示 输入账号但不输入密码点击登录 提示输入密码 预期结果
6 登录入口 已登录账号,查看登录入口 不显示登录入口 预期结果

5.3测试环境与测试条件
处理器:Inter Core I7-4710MQ四核处理器
内存:4GB
硬盘:1T
操作系统:Windows 10
数据库:MySQL
5.4系统运行情况
全部测试用例都已通过(包括但不限于以上测试用例),且不存在漏洞,实现了论文开始时所作要求。本系统运行稳定,使用流畅,可以满足用户需求。
5.5系统评价
5.5.1系统功能评价
试运行后进行系统评估,可以认为该系统达到预定的目标要求,可以满足用户的需求,也满足了系统开发前所作目标。
5.5.2系统技术评价
系统在经过大量重复测试后运行十分稳定,安全实用,功能模块已经达到预定目标所需。
5.5.3系统经济评价
在规定的时间内实现系统的大部分功能,且满足要求,节省开发成本,有助于提高科学管理水平,符合本人经济情况。

第6章 总结
2021年的今天,计算机技术已经相当成熟。它的发展推动了许多行业改头换面,计算机的出现使社会有了进一步降低人力物力和资源的方法,提高了社会的生产力,转变了社会生产方式。目前各大商家都在积极备战,发展计算机和互联网,结合自身优势进军互联网行业成为各大商家的重点项目。
本文利用Spring Boot框架和MySQL数据库技术,通过分析现实校园周边美食探索及分享平台的业务流程的基础上,并完成了在线校园周边美食探索及分享平台。经调试结果显示,本系统基本可以满足一个在线校园周边美食探索及分享平台的业务需要。系统界面简洁而有美感, 易操作,做出了自己的特点,然而因为时间仓促再加上缺乏系统开发经验和仅依靠少数问卷调查方式,因此本系统还存在不少缺陷、不足,比如:

  1. 数据输入的格式并没有全部检验,所以很难保证数据的准确,可能有一些不符合规则的数据也可以通过检验。
  2. 系统功能还不够完善,无法提供丰富多彩的在线功能,只能实现等一系列功能。
    本系统还存在一些漏洞没有解决,在现实应用情境中很难保证完全不出错,但相信通过再次完善,可以调试出真正符合实际的在线校园周边美食探索及分享平台。

参考文献:
[1]Bruce Eckel.《Thinking in Java》(第三版) [M],American:Prentice Hall PTR,2017
[2]霍斯特曼等著,陈昊鹏等译.JAVA核心技术卷II:高级特性[M]. 2019.12
3格雷恩.Ajax实战——实例详解[M].北京:人民邮电出版社 2019年11月
[4]王占全,苏玲.Eclipse全程指南[M]. 北京:电子工业出版社,2019年3月
[5]李清霞.《java动态网页设计》课程建设与教学模式研究[J].福建电脑,2017,33(06):92-93+166
[6]李刚.整合STRUTS+HIBERNATE+SPRING应用开发详解[M].北京:电子工业出版社2017年1月
[7]孙卫琴,李红成.Tomcat与java WEB开发技术讲解.电子工业出版社.2019年六月:1-205
[8]张丽.基于C语言访问的MySQL数据库[J]. 电子技术与软件工程,2018,(22):165-166
[9]廖琴,文成玉.MySQL数据库高可用性的研究与实现[J]. 科技风,2018,(18):100
[10]王国辉,王易.java数据库系统开发案例精选[M].北京:人民邮电出版社,2019
[11]高杨,赵立杰.基于java+MySQL的物流管理系统的设计与实现[J].信息系统工程,2018,(11):141+143
[12]王金龙,张静.基于java+Mysql的高校慕课(MOOC)教学系统设计[J].通讯世界,2017,(20):276-277
[13]高祖彦.软件工程思想在java程序设计教学中的应用[J].时代教育,2017,(09):211
[14]霍斯特曼等著,陈昊鹏等译.JAVA核心技术卷II:高级特性[M]. 2019.12
[15]吴秀娟.java在动态网页制作技术比较分析[J].数字技术与应用,2018,(10):221+223.


http://www.ppmy.cn/devtools/115937.html

相关文章

环球团队快速崛起,掌握最新市场趋势引领未来

近日,一个名为“环球团队”的股票投资团队在业内迅速崭露头角,备受瞩目。该团队由多位在金融证券领域经验丰富、见解独到的专家组成,很快赢得了投资者的信任和支持。他们凭借精准的市场分析和高效的投资策略,多次成功抓住市场机遇…

vue选项式写法项目案例(购物车)

一、初始化项目结构 1.初始化vite项目 npm create vite cd vite-project npm install 2.清理项目结构 清空App.vue 删除components目录下的HelloWorld.vue组件 3.为组件的样式启用sacc或less组件 npm i sass4.初始化index.css全局样式 :root{font-size:12px } 二、封装…

Linux中的环境变量及main函数参数详解

目录 Linux中的环境变量 常见环境变量 PATH : 和环境变量相关的命令 通过系统调用获取或设置环境变量 getenv putenv 新增环境变量 进程切换: main函数参数 命令行参数 Linux中的环境变量 环境变量(environment variables)一般是指在操作系统中用来指定操…

周末总结(2024/09/22)

工作 人际关系核心实践: 要学会随时回应别人的善意,执行时间控制在5分钟以内 坚持每天早会打招呼 遇到接不住的话题时拉低自己,抬高别人(无阴阳气息) 朋友圈点赞控制在5min以内,职场社交不要放在5min以外 职场的人际关系在面对利…

【网络安全 | 代码审计】PHP无参数RCE

未经许可,不得转载。 文章目录 无参数RCE代码审计1、利用Session ID实现无参数RCE2、利用get_defined_vars ()函数实现无参数RCE3、利用getallheaders()实现无参数RCE4、利用getenv()实现无参数RCE5、利用scandir()实现无参数RCE靶场实例无参数RCE 一般情况下,RCE需要通过传…

元自适应股票运动预测:两阶段表示学习法

作者:老余捞鱼 原创不易,转载请标明出处及原作者。 写在前面的话: 文章介绍了深度学习模型在数据短缺时容易过拟合以及股票时间序列可能发生领域偏移的问题。为了解决这些问题,论文提出了一个名为MASSER的新颖框架,它结合了自监督学习和元学习,并通过两阶段表示学…

初级js混淆代码处理

# 在软件开发和安全领域,代码混淆是一种常见的技术手段,旨在保护代码不被轻易理解和逆向分析。熟悉这些手段不仅能帮助我们在应对开发工作,在进行数据获取的时候也是十分有裨益的。 一、常见的混淆手段 1.压缩混淆 压缩混淆是一种基础的混…

OpenCV基础入门30讲(Python)——第三讲 图像对象的创建与赋值

在OpenCV里,对图像的操作是最为基本的。接下来我们看一下图像对象的创建与赋值。 注:前文介绍过的代码和操作不再重复。 代码 在 main 文件中,先导入新的模块 # 导入 numpy 模块,重命名为 np import numpy as np 再写进以下代…