版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
[15]。6.1测试概述测试是软件系统的重要组成部分,可以从不同层次将其切入系统。最小的测试粒度是单元测试,并且各个类和方法的测试结果均符合预期。更大的粒度是集成测试,它测试多个模块之间的交互是否正确。最大粒度是验收测试,它从用户的角度测试整个系统。由于系统结构复杂,存在许多交互,并且难以确保手动测试正确,因此大学校园二手物品交易系统使用自动测试。自动化测试可以确保代码正确,系统可以重构或扩展功能稳定,并且通过编写测试代码,您可以从用户的角度切入系统并更深入地了解系统。最后,阅读测试代码以了解系统调用,这对于将来的维护和使用非常方便。6.2测试内容根据系统的结构和RSpec语法,测试过程的原理定义如下:本系统使用MVC设计模式架构。模型和控制器是运行数据的核心,必须进行细粒度的测试。由于视图变化很大,因此无需进行细粒度的测试。测试文件对应于一个模块,即顶层描述模块信息,第二层描述功能点,底层被用作单元测试。上层功能点按预期在不同的使用场景中进行了测试。作为系统的接口,必须测试路由。对于一些重要的操作,例如登录和注册,除了细粒度的测试外,还必须执行页面测试以模拟用户操作。6.3测试结果系统共有343个测试用例。限于论文篇幅,下面以管理员用户登录为例,从路由、Controller至Dao层进行测试。(1)路由测试路由测试主要确保用户请求路由,能转发到正确Controller上。路由测试,访问signup路由,期待转发至对应Controller的new方法上,而提交用户数据至signup路由,期待转发至对应Controller的create方法。具体测试过程如下表6-2。表6-2管理员用户登录路由测试管理员用户页面路由测试输入:以HTTP的GET方式访问/signup路由1:以HTTP协议的POST方式访问/signup2:输出测试用例描述"get/signup"3:if(返回HTTP状态码404)4:输出路由错误5:else6:映射到Controller的new方法7:用例通过输入:以HTTP的GET方式访问/signup路由1:以HTTP协议的POST方式访问/signup2:输出测试用例描述"post/signup"3:if(返回HTTP状态码404)4:输出路由错误5:else6:映射到Controller的create方法7:用例通过输出:测试结果(2)Controller测试Controller测试是业务层面上的测试,除了进行权限认证外,更确保数据提交至Dao无误。用户注册提交合法数据,转发至Controller的create方法。具体测试过程如下表6-3。表6-3用户登录提交合法数据测试用户登录提交合法数据测试输入:用户名、密码1:以HTTP协议的POST方式提交数据至/signup2:if(数据不合法)3:测试不通过4:else5:写入用户记录6:提示已登录成功7:返回HTTP状况码2008:登录用户9:重定向用户个人主页10:测试通过输出:测试结果通过执行测试程序,327个用例通过测试,16个用例待定。其中系统关键Routes层共有64个用例,通过率100%。Controller层共有128个用例,通过率100%。Modal层共有116个用例,112个用例通过测试,通过率96.5%。在稳定、健壮性,系统得到保障,且在系统重构、扩展时,只要满足之前的测试用例,便确保不破坏系统稳定。6.4本章小结本章介绍了软件测试的相关类型,说明了自动化测试的特点。然后阐述了校园二手交易系统的测试环境,引入RSpec自动化测试框架,在此基础上确立测试原则。最后编写测试用例,对系统各项功能进行测试,验证系统可用性。7总结与展望7.1总结通过本次毕业设计,我学到了以前在很多书中都学不到的东西,而且我从未对专业知识产生如此强烈的兴趣。从经验的角度来看,通过毕业设计,我从项目经验中学到了很多东西。过去,我从未经历过实际的项目开发,我也不了解很多事情,也没有使用很多工具。我从未与项目分析等模块进行过具体接触,但是我至少知道项目开发之前必须进行需求分析。分析的目的是掌握需求的可行性,了解开发环境是否可以满足当前需求,以及时间是否合理。除了这些,我们还需要从技术角度分析需求。我们可以根据当前的需求、时间成本和难度来考虑是否可以使用现有技术。我深深感到本项目的发展成果超出了我得预期。编写代码只是项目开发的一小部分,对于合格的程序员,他们需要了解要求并分析要求,然后才能开发出公认的产品。从知识的角度来看,在我参与毕业项目之前,我真的可以说这是一个专业的小白,通过学校学习的知识确实使我非常困惑,我根本无法开发一个完整的小型项目。因此,我继续学习学校开设的基本知识,并在做项目的同时学习。尽管速度很慢,但我以这种方式掌握了知识。感觉很有用,比纯理论要好得多,但是随着我在重新开发中逐渐发现,我只是单纯实现功能而忽略了该理论的某些细节,有时感觉很无聊。后来,在与朋友讨论之后,在交流中理解了真理:没有理论的实践是盲目的,没有实践的理论是抽象的。因此,我认为最好将理论与实践相结合来掌握知识。从个人的角度来看,我非常喜欢软件开发。通过这个项目,我对开发尤其是前端开发非常感兴趣。在开发过程中,我不时与朋友交流。我经常在Internet上学习我的专业,后来又从实际开发中学到了。我发现我更喜欢前端知识,所以我花了很多时间在Web前端上,而且毕业我也找到了前端开发工作,但是在与朋友的交流中,我了解到仅开发一些前端静态页面,仅一个或两个前端框架是不够的,为了更进一步,我必须学习端到端交互。在这种情况下,前端开发工程师的优势将更大,因此我花了一些时间学习前端和后端交互的知识,并学习了一些后端相关的技能。在这次的完成毕设过程中,在后端存储图片的时候出现了一些问题,首先是无法上传图片文件,其次是在上传完成之后无法读取,我在翻看网上的资料的时候发现可以编写一个工具类,设置SpringBoot的上传文件路径并且把图片上传到指定的路径下,并且把服务器的图片地址写在数据库中,在项目启动的时候编写一个自动扫描的控制层,扫描页面上图片地址。完成图片的上传。才发现后端并不是那么容易学会的,还要更加注重其中的思路和逻辑。7.2展望由于能力有限,该系统还存在一些缺陷,有些功能还可以更进一步的进行完善,如个人收藏夹,用来实现用户在加入购物车之后还可以收藏的功能,方便用户更好的体验系统。对于平台的界面,还可以更美观一些,增加更多的内容。还可以在平台中添加更多的功能模块,我只是完成了最基本的,希望在以后的实战演练中对它进行不断的改进和完善。参考文献骆秀斌.物联网:下一个推动世界发展的“生产力”[J].黑龙江科技信息,2016(16).吴政翰.大学生网上消费现状分析研究[J].智库时代,2019(37):56+61.王硕.电子商务概论[D].合肥工业大学,2007.王威.MySQL数据库源代码分析及存储引擎的设计[D].南京邮电大学.StevenJ.Vaughan-Nichols.TheBattleovertheUniversalJavaIDE[M].IEEEComputerSocietyPress,2003.江雁.浅谈SpringBoot框架下如何快速进行后台开发[J].海峡科技与产业,2019(2).冯庆东,李根福.JavaWeb程序开发参考手册[M].机械工业出版社,2013.李子豪.智慧物流平台[D].北京交通大学.屈雪花.基于数据库技术存在的问题提出改进措施[J].科技资讯,2013(33):34+36.徐绕山.JavaWeb应用开发模式研究[J].信息化研究,2012,38(03):1-4+13.余法红,崔华,杨开英.软件项目中的可行性分析方法研究[J].福建电脑,2007(03):65-66.于中远,王亚平.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 紫外-可见吸收光谱法(UV-Vis)
- 大学生入职职业规划
- 大班活动教案保护大自然
- 医疗单位安全培训
- 儿童骨折的护理查房
- 三位数乘两位数能力测试模拟题大全附答案
- 《吉林大学采购管理》课件
- 大气压强实践活动
- 《入侵检测技术培训》课件
- 微课人力资源部门所承担的主要职责及发展趋势财经管理人力
- 驾校年度安全生产目标方案
- 新能源基础知识入门
- 2024年插花花艺师理论知识考试题库(含答案)
- 软硬件集成方案
- 自身免疫性脑炎护理
- 放射科院感管理制度
- 2024年基因编辑技术的伦理问题
- 材料力学课程导学与考研指导
- 腮腺及面神经解剖
- 统编本道德与法治小学四年级上册第五、第六单元集体备课(各一套)
- 生鲜食品配送部各项管理制度
评论
0/150
提交评论