又到周六了,大家周末快乐!

如果你坚持看到了这边,那么接下来我们就可以聊聊软件测试工作中的基本功了。在应聘测试工程师或者测试开发工程师的过程中,测试设计题目的考察是必不可少的环节,本章会从常见的软件测试面试考题出发给大家整理面试的思考思路。

首先大家可以阅读以下的测试设计题目,不要看后面的解析,自己尝试完成相关的测试用例设计。

常见的测试设计考察题目

(1)进行登录功能测试,例如你熟悉的APP的登录功能
(2)输入三边,测试是否能够组成一个三角形
(3)对一个可以进行笔芯替换的圆珠笔进行测试
(4)对电梯的功能进行测试
(5)测试我们在微信群中常用的抢红包功能

当年的我

在我第一次遇到这些题目的时候,和大家一样并不知道如何下手,或者更为正确的说不知道如何进行思考。在网络上搜索后得到的都是零零散散的答案,当时自己迫切希望有一套理论能给帮助我解决此类题目,而不是仅仅告诉我答案。在准备这些面试题目的时候,我希望大家不要直接看后面的答案,重点关注如何培养自己的测试思维,只有具备测试的思维之后,你才能感受到「万变不离其宗」的魅力,这也是测试后来逐渐发展成为一门学科的原因所在。

在准备软件测试岗位面试的过程中,我强烈建议大家阅读《软件测试的艺术》和《探索式软件测试》两本书,我也正是看了两本书之后也才入坑了软件测试。

不知道如何解题的原因

在上面的题目中大家没有思路主要有两点原因:
(1)面试给出的题目通常是一份宽泛的描述,不够具象化,我们的脑海中不能直接了解到待测系统所具有的属性和功能;
(2)我们没有测试设计理论知识,不知道应该进行何种类型的测试。

解题思路-万变不离其宗公式

因此为求解上述题目,第一步一定要明确的是:你能够清楚的描述待测系统的功能,否则你所设计的用例都是没有依据的。正如在前面章节所描述的那样,在企业中我们的测试设计是基于需求文档以及技术设计文档进行的,在校园招聘的面试过程中,对应届求职者我们不会在意其基于技术设计方案的了解所进行的测试设计,我们通常考察的是同学们基于需求分析进行的用例设计。

以上面的登录功能为例,可以将其基本的功能描述为:输入用户名和密码,点击登录按钮,登录成功携带登录态进入另外一个页面。基于该功能描述我们就能够想到最简单的测试用例:输入一对正确的用户名和密码,点击登录后,跳转到下一个页面。

为了解决第2个问题你需要仔细阅读《软件测试的艺术》本书,图1、2、3是《软件测试的艺术》一书中精华内容总结,图中所使用的的术语均参照的是书籍中的内容。


图1 《软件测试的艺术》的章节目录

图2 “测试设计”章节内容大纲

图3 “更高级别的测试”章节内容

图4 《软件测试的艺术》

在《软件测试的艺术》这本书中,希望大家能够熟读并掌握「软件测试的原则与分类」、「测试设计」和「更改级别的测试」这三个章节。这三章中讲述进行软件测试用遵守基本原则:不是为了验证软件没有问题,而是为了验证开发实现过程中存在错误,只有这样我们才能发现软件中的问题。并且要知道在「测试设计」章节中所描述的白盒测试、黑盒测试的设计方法,做到在求解面