软件测试和评估
针对在线学习平台的软件测试和评估
小组成员:
组长:田诗园
组员:王启萌、沃锦文、邱利光
1.基本任务
1.1被测产品说明
我们选择对在线学习平台进行测试和评估,基础软件产品是毕博平台(A),竞品产品是网易云课堂(B)。
1.2测试进度表
项目 | 内容说明 | 预估耗时 (分钟) |
实际耗时 (分钟) |
---|---|---|---|
Planning | 1.计划 | 180 | 200 |
·Estimate | ·估计这个任务需要多上时间 | 180 | 200 |
Testing Design | 2.测试设计 | 180 | 200 |
·Analysis | ·需求和测试需求分析 | 90 | 100 |
·Design Test Cases | ·设计测试用例 | 90 | 100 |
Testing Environment | 3.搭建测试环境(安装测试工具、管理工具等相关运行和支撑软件) | 60 | 80 |
Testing Implementation | 4.测试实施 | 60 | 80 |
·Test | ·执行测试 | 60 | 80 |
Reporting | 5.报告 | 200 | 240 |
·Test Report | ·测试报告 | 100 | 120 |
·Postmortem & Process Improvement Plan | ·事后总结,并提出过程改进计划 | 100 | 120 |
合计 | 680 | 800 |
1.3测试用例设计思路
对产品A和B分别划分功能模块,以下给出两个产品的功能模块划分图:
产品A(毕博平台):
产品B(网易云课堂):
产品A和产品B的共同模块:
我负责的是课程模块的测试。由于产品A和产品B在课程模块功能有差异,所以只能拟定测试大纲对两个产品进行对比测试,测试大纲分为在线学习测试、作业提交测试、课程介绍测试,产品A的测试设计如下图:
产品B的测试设计如下图:
我用黑盒测试的边界值、等价类、场景测试方法和白盒测试设计方法分别对产品A和产品B的测试小项设计20个测试用例用于功能测试,下面给出测试用例截图:
产品A的测试用例截图:
产品B的测试用例截图:
以上测试用例分别实现了对产品A和产品B的课程模块需求的全覆盖。
1.4功能测试
我负责的是课程模块的功能测试,对比产品A和产品B进行功能测试。
对产品A执行功能测试,有通过测试的,也有不通过测试的。下面给出执行视频学习功能测试的执行截图和通过测试与产生缺陷的运行界面截图:
执行测试:
通过测试:
有缺陷:
对产品B执行功能测试,大部分通过测试,只有一个缺陷。下面给出执行下载视频功能测试的执行截图和运行界面:
执行测试:
有缺陷:
1.5测试管理工具说明
本组使用的测试管理工具是禅道,版本号是9.8.3,下载链接地址:http://www.zentao.net/download/80072.mhtml
下面给出部分测试管理工具使用的关键界面截图:
1.6测试结论
对比产品A和产品B进行功能测试,由于同一个功能模块的细节有差异,要完全实现对产品A和产品B的相同功能测试是不可能的,只能对相同的测试大纲设计测试用例执行功能测试。在课程在线学习模块,产品A有更多的选择,有视频学习,讲义学习,参考资料学习,学习任务书,课前小测,课后测,但是存在较多缺陷,比如用Chrome浏览器播放视频时有声音无画面,用Edge浏览器打开讲义不能进行全屏,放大缩小,旋转,打印等操作,过期的测试还可以开始新提交;产品B更注重视频的学习,对视频的操作更丰富,产品比较成熟,几乎没有缺陷,唯一的缺陷是不能下载视频,不能满足用户需求,存在设计缺陷。产品B的课程在线学习还可以做笔记,对课程进行评价,这是产品A所没有的功能,产品A更适合在校学生学习学校安排的课程,产品B适合所有人学习免费公开的课程,产品B还有有偿授课,商业化做的比较好,产品A和产品B各有优势,但产品B更有优势,有更大的商用价值。
2.扩展任务
2.1个人说明
我通过参考邹欣老师的博客现代软件工程讲义 6 用户调研[1]和现代软件工程讲义 7 用户界面和用户体验[2]学习如何进行用户调研,如何收集用户体验,如何对用户体验加以评价,如何进行可用性测试。我在可用性测试中负责对用户执行课程在线学习模块的测试,记录用户体验,收集产品存在的缺陷,和用户交流,听取用户建议,完成可用性测试报告,学会了可用性测试的相关知识。
3.高级任务
3.1测试专题和测试工具
本组选择的测试专题是前端性能分析测试,测试工具是Chrome开发者工具。
3.2核心思想
本次测试设计的核心思想是寻找能提升用户体验的地方。
3.3工作感受
通过完成高级任务,我学会了定性测试和定量测试,这其中参考了邹欣老师的博客现代软件工程 团队作业 - 软件分析和用户需求调查 (2013 - 2014)[3],我们对产品A和产品B的前端性能进行对比分析,寻找更优的用户体验,学会了前端分析工具Chrome开发者工具的使用,熟悉了前端性能分析的操作,对软件测试和评估有了更深入的了解。
3.4三次实践作业感受
3.4.1 作业内容
- 三次实践作业循序渐进,内容和形式非常新颖,具有很高的辨识度;
- 能激发同学们的学习兴趣,投入更多的时间研究软件测试;
- 建议:适当精简,保留要点,对重要部分可以着重强调,减少繁琐的细节。
3.4.2 作业量
- 作业量偏大,如果想要很好地完成任务需要相当长的时间,这对于我们现阶段的学习安排来说是一个不小的挑战;
- 建议:减少作业量,但是要切中要害,练习必要的部分。
3.4.3 作业与课堂内容的结合程度
- 作业大致上符合课堂教授的内容;
- 很多需要实际学习的知识和技能课堂上并没有讲授,但是在实践作业的进行过程中扮演了比较重要的角色(其实这一点可以考虑进作业量当中去);
- 建议:精简作业量,考虑到潜在的过多的练习因素。
3.4.4 测试技能锻炼
- 的确很好地提高了软件测试和评估技能;
- 对于软件测试、软件测试的管理、软件评估等都有了深入的认识;
- 建议:继续保持当前风格,但是要加强和同学们的提前沟通,以防止出现例如作业量的分歧和作业内容需求不清之类的矛盾。
3.5小组贡献率
小组贡献率详见组长在毕博平台提交的小组贡献率。
4.参考文献链接
[1] http://www.cnblogs.com/xinz/archive/2013/02/03/2890786.html
[2] http://www.cnblogs.com/xinz/archive/2011/11/06/2237801.html
[3] http://www.cnblogs.com/xinz/p/3308608.html