第6周小组作业:软件测试和评估
计划说明
选择的对比测试产品
选择的对比产品是背单词APP分类下的百词斩和扇贝单词
测试进度表
项目 |
内容说明 |
预估耗时 (分钟) |
实际耗时 (分钟) |
Planning |
|
10 |
20 |
· Estimate |
· 估计这个任务需要多少时间 |
10 |
15 |
Testing Design |
|
40 |
60 |
· Analysis |
· 需求和测试需求分析 |
30 |
45 |
· Design Test Cases |
· 设计测试用例 |
60 |
70 |
Testing Environment |
|
30 |
60 |
Testing Implementation |
|
60 |
60 |
· Test |
· 执行测试 |
40 |
65 |
Reporting |
|
60 |
70 |
· Test Report |
· 测试报告 |
20 |
30 |
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
20 |
40 |
合 计 |
380 |
535 |
需求说明
功能模块划分图
本人负责的功能模块
我负责测试的模块主要是两个单词APP的背单词模块
测试说明
测试用例的设计思路
百词斩APP
以下为百词斩APP背单词模块的业务流程图,为描述精简,有些地方进行了简化和删减,如每次背单词时若未联网则分已经下载过资源和未下载资源的情况,在进行选择的时候也可选择直接将单词“斩”掉的情况,有时新单词会以类似常用词的情况出现,此时只用答对一次就再也不会出现其他的选项。以上这些具体情况会在测试用例中考虑到,等下分析时也会进行讨论。
从边界值和等价类来分析背单词模块是比较困难的,因为在这些功能来看输入都是基本已经确定的,边界值和等价类难以寻找,因此用场景测试方法来分析更加的容易与可行。现在一步步来分析各个场景。
确定计划场景:选择APP所提供的词汇和计划,可以通过不同的组合来写测试用例
点击“开始背单词吧”按钮场景:进入APP的背单词模块,分为多种情况来进行测试,一种是在当天计划内,一种是当天计划已经完成再背单词。还有分为断网进入与联网进入,此时也可分为已经下载单词资源与未下载单词资源。还可以分为背单词中途退出再进入的情况。
复习模块场景:复习之前学过的单词,有根据单词选图或根据中文选单词,选择正确或“斩”才会消失,否则会先解释词意然后过段时间再出现。
学习新单词场景 :学习未学过的的单词,会有多种选项,一般的会有根据单词选图片,根据单词选中文,根据中文选英文单词,最先出现的选图片,再是选中文,最后是选英文,这种是选对后选项依次出现,都选对后则消失表示已记完。还有有时会出现类似常用词的情况,这时只要选对该单词就会消失所有单词被“斩”后都不会再出现。
以上解释了每个场景的对应的情况与可以进行的选择,基本流可以看出是我们经常使用的事件流,从大体上来看即上图的背单词流程图。从细节来划分,可以有无限种流,因为选择单词的时候选对选错是不能确定的,比如可以一直选择错误的选项。因此,设计背单词场景的测试用例以有限的选择来测试即可,不考虑极端情况,即根据上面的各个细化场景的不同情况来设计测试用例来测试这些事件流即可将大部分的情况进行覆盖。
以下举例几个设计的测试用例
扇贝单词
以下为扇贝单词APP背单词模块的业务流程图,为描述精简,有些地方进行了简化和删减。同百词斩APP类似,也是直接选择正确则此次流程不再出现,选择错误会重复出现来加深背单词的印象。不同的地方也有很多,如扇贝单词的选项只有认识与不认识,扇贝单词用的类似记忆曲线的算法来选择提供给用户的单词。同时有百词斩里“斩”类似的功能。主要功能但在流程图中没写出的会在测试用例中考虑到,等下分析时也会进行讨论。
同百词斩APP测试用例类似,边界与等价类测试方法是很难用来分析的,所以依旧采用场景测试方法来分析。
确定计划场景:与百词斩APP有不同,扇贝更换计划需要在我的信息里面的单词书下更改,书库多而杂,不好选择,有的还需收费,且计划切换后第二天才生效,日期计划与百词斩类似。
进入学习场景:每天第一次学习的时候会有“开始学习“的按钮,但是学完结束打卡后就没有这个按钮,只会有”再来一组“的按钮。同样可以分为联网断网,中途退出等情况。
学习单词场景:扇贝单词的学习场景与百词斩也有不同,扇贝单词的学习单词不分为复习和新学两个模块,将所有的单词一视同仁,不认识之后以后会多次出现以加深印象,新单词第一次认识后今天就不会再出现,而百词斩APP则是多种形式都正确选择才会跳过。
以上大致的解释了各个场景会出现的情况,基本流是背单词主要流程,这个基本流与百词斩的基本流一样,包括了很多的子流,并不是完全确定的。因此设计测试用例的时候对几个主要场景进行分析即可考虑到通常用户所能用的主要情况。
以下举例几个设计的测试用例
测试总结
两个APP的测试思路是一致的,都是以测试基本流场景为主。大体上两个APP的基本流一致,所以在设计测试用例时先对百词斩APP进行了设计,之后再在其的参考之上对扇贝单词的测试用例进行设计,但是有的用例是不能通用的,所以根据其不同的细节进行了改变。主要来讲,这些测试的用例都是根据这两个APP在背单词模块所能提供各种的操作来组成,基本覆盖了模块内的主要操作。大体上测试用例被分为三大块来设计,有学习计划场景,进入学习场景,学习单词场景,然后再将这些大的模块根据各APP所拥有的不同细节来具体设计。
运行界面截图
百词斩APP
扇贝单词
测试管理工具
使用的测试工具是禅道企业版 1.1.4
下载地址http://www.zentao.net/download/80074.html
测试管理工具关键界面截图
测试用例截图
导出测试用例截图
结论说明
通过对比百词斩与扇贝单词的背单词功能,其不同的部分在很多地方都有体现。
- 最大的不同则是在记忆单词的时候,百词斩所使用的形式是多样的,则扇贝只能选择认识和不认识。
- 还有就是百词斩将背单词分为两个模块,对复习的单词和新的单词进行了分开处理,而扇贝单词则选择一视同仁。
- 百词斩没有单独的今日单词复习,而扇贝单词可以对今天学的单词进行单独训练
- 当没有下载单词资源时,百词斩采用的方法是每次下载一点,而扇贝单词则是全部下载完,因此在中途断网是百词斩会推出来。
总的来说,我认为百词斩背单词的记忆深度不够扇贝单词,一个是因为百词斩每次背完今日的计划单词后不能再复习,一个是由于选择时有随机因素不能判断自己是否真的认识。但是扇贝单词在相同的计划下所给用户的任务是更多的,由于没有图片等形式化的记忆,所以只能硬背,虽然达到了很好的记忆深度但是太过于枯燥。最后,在背单词这个模块上来讲,我更推荐百词斩APP,因为背单词会比扇贝单词APP更加高效,在相同的时间内可以背下更多的单词,由于形式的多样化,背单词也会更有趣。
工作说明
自己的小组贡献分是0.45
用户调研和可用性测试
具体见附件可用性测试报告
专题测试
所选的测试专题和测试工具
选择的是移动测试专题下的自动化兼容测试,测试工具是腾讯WeTest
测试设计的核心思想
具体见腾讯WeTest的自动化兼容测试介绍说明
http://wetest.qq.com/product/auto-compatibility-testing#colume_155
感受
在完成高级任务后,我感受到了现在各个平台测试的智能化,他们采用了云平台的方法将测试的工具都云化,即用户不需要拿到相应的真实工具,就能完成测试任务。自动化测试也十分的智能,只需提交APK即可,不需要再一步步的负责。
3次实践作业的看法
从作业内容来看,最大的作业量就是第一次作业WC了,基本就是在编程,与测试相关的内容我觉得还是很少的。第二次作业WC优化,我采用了与第一次不同的语言JAVA来编程,基本来讲,基本很少借鉴第一次的作业,是又在网上查资料与自行编程,可能第一次最大的作用就是学到了怎样控制main函数的变量与控制台输入吧。第一次与第二次对比来讲,我觉得第一次作业显得是有些多余的,因为完完全全就是在编程,第二次才使用了JUNIT单元测试,这倒是还很不错的体验,学到了与课程相关的知识,对软件测试有了初步的了解。第三次作业软件测试与评估这次作业我认为主要是锻炼了自己黑盒测试的能力,以及对于测试思想的一些深入。总的来说,我认为第二次实验我的收获是最大的,第三次第二多,第一次最少但花费的精力最多。
工作说明
自己的小组贡献分是0.45