概述
背单词APP是非常受大学生青睐的手机应用,但它的发展尚未成熟,存在一些缺陷。我们决定深入地分析一组典型的背单词APP:百词斩(A产品)、扇贝单词(B产品),寻找当前背单词APP中的提升空间。下面给出了预估项目完成时间表。
项目 | 内容说明 | 预估耗时(分钟) | 实际耗时(分钟)
- | - | - | -
Planning| 1.计划 | 10 | 5 |
· Estimate | · 估计这个任务需要多少时间 | 10 | 5 |
Testing Design | 2.测试设计 | 160 | 120 |
· Analysis | · 需求和测试需求分析 | 40+80 | 30+30 |
· Design Test Cases | · 设计测试用例 | 40 | 60 |
Testing Environment | 3.搭建测试环境(安装测试工具、管理工具等相关运行和支撑软件) | 60 | 30 |
Testing Implementation | 4.测试实施 | 300 | 480 |
· Test | · 执行测试 | 300 | 480 |
Reporting | 5.报告 | 100 | 60 |
· Test Report | · 测试报告 | 40 | 30 |
· Postmortem & Process Improvement Plan | · 事后总结, 并提出过程改进计划 | 60 | 30 |
|| 合计 | 630 | 695 |
模块划分
百词斩和扇贝单词都是功能齐全、十分综合的APP。他们的模块划分图形如下图:
接下来,我们将对它们四个主要的共有的模块——背词模块、学习模块、词库模块和交际模块,进行测试。
我所负责的模块是学习模块,学习模块的作用是帮助用户通过视频、阅读文章的方式进行学习。这里要将它与“背词模块”加以区分。背词模块是用户使用APP的主体部分,侧重点在按照计划学习单词、背词、打卡。学习模块强调的是APP向用户提供其他材料,使用背单词以外的方式使用户达到学习的目的。
百词斩的学习模块包括
- 单词TV(专题)——拥有两个专题(大话词源、斩家情景剧),以视频的形式呈现给用户。视频可以自动连播,用户还可以进行评论
- 单词TV(已学单词)——将用户之前学习的单词以视频讲解的形式提供给用户
- 单词TV(发现)——将用户尚未学习的单词以视频讲解的形式提供给用户
- 单词电台(单词音频)——将用户已学单词以音频讲解的形式提供给用户,可以连播
- 单词电台(阅读计划音频)——将一些经典的英语名著以文字和朗读的形式呈现给用户
- 单词电台(真题音频)——给用户提供了重要英语考试的听力材料
- 爱阅读——根据用户制定的计划和专辑,给用户提供阅读材料,以文字和朗读的形式呈现给用户。用户可以在阅读材料中做笔记、分享
- 单词量测试——为用户提供一系列单词选择题,以测试用户的词汇量
- 小讲堂——包含一系列学习向的文章
- 兴趣圈——相当于一个用户论坛,按照不同主题划分区域,用户可以发帖交流
扇贝单词的学习模块包括
- 用短语背单词——用户选择一本教材,然后使用短语的形式学习这些单词
- 用视频学单词——以情景剧的形式展现一段视频材料,帮助用户学单词,可以评论、分享
- 扇贝自习室——由扇贝单词发布一系列学习有关的话题,用户可以在下方评论
- 扇贝同桌——为用户匹配到一个有相同需求的用户,相互监督学习
- 扇贝小组——相当于一个论坛,以用户相互监督学习为目的
- 每日一句——每天提供一个美句供用户欣赏、学习
- 扇贝精选——包含一系列学习向的文章
- 单词量测试——为用户提供一系列单词选择题,以测试用户的词汇量
- 小游戏——通过小游戏的形式帮助用户学习单词
我们发现,很多功能在这两个APP中,虽然有不同的名称,但是却有相同的功能。如:单词TV←→用视频学单词、小讲堂←→扇贝精选、扇贝小组←→兴趣圈。接下来的测试用例设计中,我们会重视这些共同拥有的功能,做一些对比性功能测试。
测试用例的设计
首先列出两个APP总共40个测试用例。(我们使用了禅道9.8.3作为测试管理工具)
关于禅道的使用方法(如测试用例的导出),可以在彩民的这篇文章中看到。
对于被测试的绝大部分功能,由于非常简单,在这里不再赘述。下面我只对几个特别的测试用例设计进行说明。
单词电台(百词斩)
百词斩的“单词电台”具有繁杂的功能,它将用户已学单词以音频讲解的形式提供给用户,并且支持连播。用户可以从头开始收听单词电台,这样,他将依次听到他之前所学习的所有单词。他也可以点选一个特定的单词去收听。那么我们就有了一个等价类划分。
从头播放意味着用户进入单词电台后,直接点击播放按钮。播放结尾意味着,用户直接选择单词电台的结尾进行播放。
从头播放
这是一种默认的播放方式(但不一定最实用),APP将首先播放片头,然后顺序播放单词列表中的所有单词,然后播放片尾,最后循环回到第一个单词。(之后的循环不会再播放片头)
点选单词播放
这种方式最适合用户学习。首先APP会播放用户点选的单词,然后顺序播放单词列表中的所有单词,然后播放片尾,最后循环回到第一个单词。(之后的循环不会再播放片头)
这个等价类具有两个边界值:用户点选单词列表第一个单词、用户点选单词列表最后一个单词。
在我们的测试用例下,“单词电台”没有表现出缺陷。
播放结尾
这种方式仅仅会在测试中用到(一般用户不会播放结尾)。此时,APP会播放片尾,然后循环回到第一个单词,顺序播放单词列表中的所有单词,如此往复。(依然不会播放片头)
用短语背单词(扇贝单词)
扇贝单词的“用短语背单词”有一系列复杂的事件流,在这里我们选用了场景法进行测试。
经过归纳总结,我们画出了场景事件流,它看起来像是这样的:
注意到结点①③④⑥均为分支节点,于是环复杂度为5,且不存在相互依赖的事件流,于是我们设计了五个测试用例。
用例一:0,1,3,4,5,4,3,0
用例二:0,1,2,1,3,0
用例三:0,1,3,4,6,5,4,3,0
用例四:0,1,3,4,6,5,4,5,4,3,0
用例五:0,1,3,4,6,5,4,3,0,1,2,1,3,0
它们是一组相互独立的测试用例。并且他们均通过了测试
发现的缺陷
在学习模块中,百词斩和扇贝单词的表现均十分良好,大部分功能都很好地实现了。
美中不足的是,在百词斩的“爱阅读”功能中,出现了一些小缺陷。
“爱阅读”的专辑播放功能,允许用户按照顺序,自动播放一个专辑中的所有文章。但是在播放时,出现了专辑中不同文章的播放音量大小不统一的问题。如,在专辑“爱之初体验(高级)”中,《独立日激情演讲》音量很高,而同属于这一专辑的《张国荣出任CASH形象大使英文演讲》的音量就很低。用户尽管选择了自动连播,但却要自己调整每一篇文章的音量。APP没有做到预先调整每一篇材料的音量,这是一个影响用户体验的BUG。
可用性测试
我们还对邀请了亲朋好友(总共13位,分为4批)进行了“百词斩”的可用性测试。我们总共设计了四个场景,被测用户按照要求依次完成每个场景中的任务,用户一边执行任务,一边说出自己的感受。在每个场景结束后,我们会询问用户是否遇到产品缺陷。如果用户说不出来,我们还会告诉用户之前几批被测用户遇见的问题,以激发用户的思维。
具体的场景设计、测试过程、测试结果可以在毕博平台上的“可用性测试报告”上找到。
总结
关于两个APP
百词斩和扇贝单词在功能方面,可以说是非常全面。它们主要的缺点就在于,功能还不够“精”。上文所说的“爱阅读”的缺陷算一个。在别的模块中,还发现了更多的BUG。例如,在交际模块的“单词PK”功能中,好友PK提醒过于隐蔽,导致用户很难发现自己被人邀请PK。更多的缺陷还可以在levey的博客、西瓜的博客、以及彩民的博客中进一步了解。
百词斩的“单词TV”和扇贝单词的“看视频学单词”都为用户提供了看视频进行学习的途径。但是百词斩的视频数量更多,而且有着统一的分类(大话词源、斩家情景剧),而扇贝单词就显得很杂乱,仅仅有一个“最新发布”的入口,里面放着寥寥无几的视频材料,这一点,百词斩更有竞争力。
左图是百词斩“单词TV”,右图是扇贝单词“看视频学单词”。
百词斩的“小讲堂”和扇贝单词的“扇贝精选”,为用户一系列学习向的文章。就功能而言,他们不分伯仲。就界面而言,百词斩明显在色调、界面分布、字体大小上多下了一些功夫。
由此可见,相同的功能,百词斩比扇贝单词制作地更加精美。百词斩把这么一个背单词APP,做出了一款交际APP的感觉;而扇贝单词只是一个专业的背单词APP,它尝试做出一些扩展功能,但是效果并不好。
关于我们
最初,我们拿到这个任务时,一致认为:“百词斩和扇贝单词这两个APP使用这么广泛,怎么会有BUG呢?要是有BUG也早就被其他用户发现,然后已经修复了。”后来,随着一个又一个测试的推进,大家还是发现了很多BUG。这就告诉我们,一个APP,对于它的测试是没有止尽的,它被使用的次数越多,就会暴露出越多的BUG。
这次的任务主要以测试为主,小组所有成员平摊了所有任务,因为不存在编码,所以大家的工作量没有显著的区别。个人贡献分:25%