课程设计报告
2020~2021学年第二学期
 2021 年 6 月 6 日
课程设计 任务书

目录

第一章 测试需求分析
1.1 系统用户资讯功能概述
本功能包括心理头条和心理杂志两部分,但这两个功能类似,在本课程设计中就选择心理头条功能进行本次课程设计的案例。 心理头条包括序号、名称、图片、分类、发表人、发表时间、阅读人数、收藏,以及查询按钮和切换视图按钮。当输入查询名称或其他输入的数据时,通过模糊查询,可以将符合结果的都显示给用户。当用户点击操作(详情)时,进入改头条消息的详情信息。在显示详情信息页面,除了上述提到的,还有返回、打印、评论、收藏、分享的功能。打印可以将本页面通过打印机打印出来,评论,如果没有进行登录将会弹出一个提示框,提示用户登录再进行在线评论;若用户已经登录了,则可以直接进行在线评论,在线评论时,评论人是不能更改的,点击提交后即可在当前页面显示。收藏功能和评论功能类似。分享就是直接通过链接分享出去。 技术简介: 本系统采用MySQL数据库、C/S结构,完全支持多用户操作;可运行于 Windows10等多平台,有良好的兼容性、先进性与扩充性;可在线升级。 改功能特点:操作简单、界面清晰、功能强大、运行稳定快速、系统资源占用少。
1.2 测试需求
本次课程设计的测试将从两个方面展开;第一:心理头条页面功能测试,第二:心理头条详细页面功能测试。本次课程设计针对平院心理咨询室系统开展功能测试、界面测试,性能测试等。按照规格需求说明书中的功能进行测试,在测试过程中发现软件的漏洞不足并予以改正。如表2-1所示。 表2-1 系统测试需求概要说明 
第二章 测试计划
2.1 测试目标
<平院心理咨询室>的这一“测试计划”文档有助于实现以下目标:
- 测试心理头条界面的显示控制是否能够承担5000的并发量,头条查询是否能够查询成功、切换视图浏览是否能够切换、查看某条头条详情能否成功跳转相应页面。
- 测试心理头条详细页面功能的显示控制是否能够承担5000的并发量,对当前页面的打印功能测试是否成功、评论功能(包括逻辑判断)是否能够被用户正常使用、收藏(包括逻辑判断)功能能够被用户正确收藏、分享功能(分享到其他平台)是否能够正确跳转到其他平台。
2.2 测试方法和技术
单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。 集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。它最简单的形式是:把两个已经测试过的单元组合成一个组件,测试它们之间的接口。 系统测试是将经过集成测试的软件,作为计算机系统的一个部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现软件潜在的问题,保证系统的正常运行。 主要内容包括: 功能测试。即测试软件系统的功能是否正确,其依据是需求文档,如《产品需求规格说明书》。由于正确性是软件最重要的质量因素,所以功能测试必不可少。 健壮性测试。即测试软件系统在异常情况下能否正常运行的能力。健壮性有两层含义:一是容错能力,二是恢复能力。 验收测试是部署软件之前的最后一个测试操作。在软件产品完成了单元测试、集成测试和系统测试之后,产品发布之前所进行的软件测试活动。它是技术测试的最后一个阶段,也称为交付测试。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。 本地化就是将软件版本语言进行更改,比如将英文的windows改成中文的windows就是本地化。本地化测试的对象是软件的本地化版本。本地化测试的目的是测试特定目标区域设置的软件本地化质量。本地化测试的环境是在本地化的操作系统上安装本地化的软件。
2.3 测试方案
本待测项目的心理头条功能的特点是:该功能需要用户点击导航栏中的资讯,分页显示资讯信息,可以小图标或列表显示资讯记录界面。在资讯显示界面界面点击资讯图片进入资讯详情界面,浏览资讯。浏览完毕后,用户可对资讯内容进行评论和收藏。
2.4 测试环境
测试环境: 软件:Windows10、tomcat7.0、JMeter、Chrome
2.5 测试覆盖率要求
- 对需求的测试覆盖率要求
在这里争取测试用例的执行率要在100%,即所有用例都要执行一遍,测试用例的通过率要达到95%以上。
2.6 测试进度

第三章 测试用例设计
3.1测试项目名称及测试内容
- 测试1:
名称:心理头条页面功能测试 目的:测试心理头条页面功能的查询、切换视图功能 内容:心理头条界面的显示控制,头条查询、切换视图浏览、查看某条头条详情。 - 测试2:
名称:心理头条详细页面功能测试 目的:测试心理头条详细页面功能的返回、打印、评论、收藏功能 内容:心理头条详细页面功能的显示控制,当前页面的打印、评论功能(包括逻辑判断)、收藏(包括逻辑判断)、分享功能(分享到其他平台)。
3.2测试用例
1-1. 系统心理头条页面功能测试(边界值分析法) 表3-1-1-1系统心理头条页面功能测试用例设计  2-1. 系统心理头条详细页面功能测试(边界值分析法) 先给出该功能的特点,然后说明采用哪些测试方法设计测试用例(也就是先给出设计思路)。然后给出测试用例(表格或者文字形式均可)。 表3-2-1-1系统心理头条详细页面功能测试用例设计  1-2. 系统心理头条页面功能测试(等价类分析法) 先给出该功能的特点,然后说明采用哪些测试方法设计测试用例(也就是先给出设计思路)。然后给出测试用例(表格或者文字形式均可)。 表3-1-2-1列出等价类表并编号  设计等价有效类的测试用例: 表3-1-2-2覆盖有效等价类测试用例  表3-1-2-2覆盖有效等价类测试用例 设计等价有效类的测试用例: 表3-1-2-2覆盖有效等价类测试用例  2-2. 系统心理头条详细页面功能测试(场景法) 我们在使用该用例的时候,选择某一头条的详情进入详细信息的页面,在页面内,有返回、打印、评论、收藏、分享的按钮。点击返回,即返回上一页面。点击评论,则先判断用户是否处于已登录状态,若否,则提示用户进行登录;若处于已登录状态则允许用户进行该头条的评论。点击收藏,则先判断用户是否处于已登录状态,若否,则提示用户进行登录;若处于已登录状态则允许用户对该头条收藏,同时收藏总数+1。若用户点击分享按钮,则可直接跳转相应的平台进行分享。  图3-2-2-1系统心理头条详细页面功能流程图 确定基本流和备选流: 表3-2-2-1系统心理头条详细页面功能事件流  根据基本流和备选流确定场景: 表3-2-2-2 系统心理头条详细页面功能的场景  每一个场景都需要确定测试用例,对于每个测试用例,存在一个测试用例ID、条件(或说明)、测试用例中涉及的所有数据元素(作为输入或已经存在于数据库中)以及预期结果。 表3-2-2-3 系统心理头条详细页面功能的场景法测试用例  3-3. 系统心理头条页面功能测试性能测试 首先对心理头条页面进行性能测试: 表3-3-1 心理头条页面进行性能测试用例 
对心理头条页面查询功能进行性能测试: 表3-3-2 心理头条页面进行性能测试用例 
第四章 测试用例执行
4.1 心理头条页面功能测试用例执行
名称输入:“Q名称” 输出要求:单独显示符合输入为“Q名称”的一条信息 输出结果:   是否与期望结果一致:一致
名称输入:“Q” 输出要求:显示符合输入包含“Q”的所有信息 输出结果:  是否与期望结果一致:一致
所有输入框输入:不输入任何数值 输出要求:刷新当前页面,显示效果不变和原来一样 输出结果:  是否与期望结果一致:一致
名称输入:输入I 输出要求:不显任何结果 输出结果:  是否与期望结果一致:一致
发表人输入:“001” 输出要求:显示发表人为001的头条信息 输出结果:  是否与期望结果一致:一致
发表人输入:“aaa” 输出要求:不显任何结果 输出结果:  是否与期望结果一致:一致
阅读人数输入:“0” 输出要求:显示阅读人数为0的头条信息 输出结果:  是否与期望结果一致:不一致 修改建议:将sql语句更改一下,并且还需要对传参的具体数据具体过程检查一遍以便找出错误并修改。阅读人数为0的测试都不通过,那么阅读人数为77的就不需要再测试。 收藏输入框输入:“0” 输出要求:显示收藏数为0的头条信息 输出结果: 发表时间选择框输入:“选择时间为2020-1-24至2020-3-19” 输出要求:显示发表时间在两个之间的所有的头条信息 输出结果:  是否与期望结果一致:不一致 修改建议:将sql语句更改一下,并且还需要对传参的具体数据具体过程检查一遍以便找出错误并修改。
4.2系统心理头条详细页面功能测试用例执行
首先进入页面: 测试:首先对打印按钮进行测试 测试结果要求:弹出本页面的pdf格式和打印相关选项 测试结果:  测试:在没登陆的情况下,对点击评论进行测试 测试结果要求:显示请先登录的友好提示 测试结果: 测试:当成功登录后,对点击评论进行测试 测试结果要求:显示评论小窗口,供用户提交评论 测试结果: 测试:当成功登录后并点击评论,不填写任何评论内容点击提交 测试结果要求:应提示必须写评论内容再进行提交 测试结果:  与期望结果是否一致:不一致 修改建议:应对评论内容进行判断是否有内容,若有内容才能成功提交,否则给予用户提示“请应填写评论内容方可提交”。
测试:当成功登录后并点击评论,对点击重置进行测试 测试结果要求:所有选项、用户填写的内容都将设置成默认值 测试结果:  测试:在用户没有登录的情况下,对点击收藏进行测试 测试结果要求:显示请先登录的友好提示 测试结果: 测试:当成功登录后,对点击收藏进行测试 测试结果要求:显示收藏成功的友好提示,并且收藏数+1 测试结果:  是否与期望结果一致:不一致 修改建议:当用户对头条进行收藏时,应该增加一个数目,然后在测试中并未增加,故需要对此进行修改。
测试:当成功登录后并点击右侧按钮,分享到(选择某一平台) 测试结果要求:跳转相关的分享页面,供用户进行分享 测试结果:  是否与期望结果一致:一致
测试:在用户未登录的情况下,点击右侧按钮,分享到(选择某一平台)进行测试 测试结果要求:跳转相关的分享页面,供用户进行分享 测试结果: 是否与期望结果一致:一致
第一阶段:100并发用户数,访问一个页面 先创建脚本: 结果:请求数328、平均响应时间:62546、最小响应时间15、最大响应时间161590、错误率0.00% 汇总报告: 聚合报告: 再测试一下另一个数据:500个并发数  结果:请求数526、平均响应时间:31024、最小响应时间15、最大响应时间182917、错误率27.76%
聚合报告: 汇总报告: 可见当并发数量为500时开始出现错误率,并且错误率为27.76%
第二阶段:
首先对名称进行性能测试:     在本次测试中,样本数为1000的情况下,错误率为0.00%,通过本次测试。 对发表人进行性能测试:  当样本数为1000的时候,错误率为0.00%,通过测试,再试试更多的样本数: 参数不变: 查看一下请求头、请求体:  显然,当样本数为5000的时候,此时的错误率为60.24%,所以当样本数为1000的时候是符合测试需求。若当样本数为5000是就系统就承受不住了。
对发表时间进行性能测试: 首先是样本数为1000:   显然,当样本数为1000的时候,错误率为0.00%,再来测试一下5000的情况: 当样本数据为5000的时候,错误率为50.76%。 阅读人数的性能测试:  由此可见,当样本数为1000的时候,错误率为0.00%,再试试5000的样本数。
收藏人数的性能测试:  样本数为5000:  显然,当样本数为5000的时候,错误率达51.20%,不符合测试要求。 综上:对需求的测试覆盖率的要求以达到。
第五章 测试评价与结论
5.1能力
针对现实情况,该软件的资讯模块进行相应的操作,心理头条页面功能能做到基本的基本的查询、切换视图;心理头条详细页面功能的返回、打印、评论、收藏功能;并且在一定条件下,令人感觉该系统还不错。
5.2缺陷和限制
在心理头条页面功能中,除了界面不太美观,其他的都还行。 在心理头条页面查询功能中,根据发表时间查询头条信息,不能正确查询;根据阅读人数查询头条信息,不能正确查询;根据收藏人数查询头条信息,不能正确查询。 在心理头条详情页面功能中,评论功能,不能判断用户是否有评价内容,直接发表评论。 并且,在这两个页面中,只能在并发量1000以内能够运行,若到达5000,错误率就猛增,不足以满足需求。
5.3建议
1.对心理头条页面进行更新优化,在按钮布局上应该在同一水平上,或者在页面的其他地方,使得页面看上去高级些。 2.修改相应的代码,使得用户通过发表时间进行头条的查询。 3.修改相应的代码,使得用户通过阅读人数进行头条的查询。 4.修改相应的代码,使得用户通过收藏人数进行头条的查询。 5.修改相应的代码,在心理头条详情页面功能中,应该对评论功能的评论内容进行判断,目的是为了约束用户,用户不应该随心所欲对系统乱来。 6.在性能方面,系统应该对大的并发量进行处理优化,使得更多用户能顺利流畅的访问本系统。
第六章 总结
此平院心理咨询室系统是功能非常强大的心理咨询软件,此系统在继承了以往系统版本优点的基础上做了进一步优化;在功能上,此系统不仅包含心理咨询、心理课程、喜讯、在线评论、系统概要、在线留言、后台管理的常用功能,而且在打印功能还增加了生成pdf的功能,可以以文件的形式将头条打印出来。针对实现了的平院心理咨询室系统的功能模块,大部分达到了预定的要求。在心理头条页面功能中,除了界面不太美观,其他的都还行。在心理头条页面查询功能中,根据发表时间查询头条信息,不能正确查询;根据阅读人数查询头条信息,不能正确查询;根据收藏人数查询头条信息,不能正确查询。在心理头条详情页面功能中,评论功能,不能判断用户是否有评价内容,直接发表评论。并且,在这两个页面中,只能在并发量1000以内能够运行,若到达5000,错误率就猛增,不足以满足需求。 这次课设,在设计过程中碰到了很多问题,刚开始要设计的时候不知道从哪里下手,但通过不断摸索和老师的教导得以解决,让我学到了很多书本上没有的东西,我也将课本上的知识融会贯通,起到了很好的辅助学习的效果,我也发现我学到的知识比上个学期学的还要多。理论和实践相结合是学习的最有效的方法,这次设计中我也发现了自己的很多不足之处,对以前所学的理解不够深刻,掌握不够牢固。 通过此次软件测试的课程设计,我深刻学习掌握了软件测试和软件测试过程的基本方法和基本技术,关于黑盒、白盒的测试用例的设计以及边界划分法,等价类划分法,场景法。也进行了认真学习研究,从而进一步提高了自己在程序上的编写能力,以及一些之前未触及的问题,为即将踏上社会的自己又做了一份理论和实践的准备。
第七章 参考文献
[1]朱少民.软件测试方法和技术(第3版)[M].清华大学出版社,2005.7 [2]蔡建平. (2014). 软件测试方法与技术. 清华大学出版社. [3]佘凤. (2016). 场景法测试技术及应用. 电脑编程技巧与维护, 000(018), 23-24.
写在最后,若需要本项目进行测试学习可以给我发邮件:YUANCO_xyy@163.com
|