探索式场景联想法:如何简单、快速地编写一条测试用例?

上一篇 / 下一篇  2022-06-15 17:02:07 / 个人分类:软件测试

本文适用对象

初级软件测试人员,或想开拓思路拓展测试范围、提高测试覆盖率的所有测试人员等等。加我VX:atstudy-js 回复“测试”,进入 自动化测试学习交流群~~

本文目的

讲述如何快速、简单、有效、有条理地编写一条测试用例,并帮助测试人员从测试用例角度拓展测试思路。

如何简单、快速地描述(编写)一个测试用例

测试用例的目的在于指导、帮助测试人员按照既定的计划步骤执行测试,并比对测试结果与预期结果是否一致。

对于中大型软件公司而言,测试用例的管理都有既定的规范和工具,如表格管理用例、测试管理软件管理用例(如下图1所示为MeterSphere测试管理软件用例编写页面)等。

但总而言之,测试用例的内容主要不外乎3个部分:前置条件、步骤、预期结果。

前置条件,阐明了软件测试的需求的环境、软件状态等等信息;

步骤,表明在设定条件下执行的一些操作;

预期结果,表明测试人员根据需求报告或功能列表推论出的在测试过程中,执行某一个步骤后,软件的响应或反馈。

测试用例就是测试人员的测试指导书。

图1 MeterSphere用例编写页面

那么,对于没有明确地测试管理软件的小型软件公司,或者对于测试人员而言,需要暂时快速地编写一个测试用例或记录测试过程的时候,可以怎么做呢?

推荐一个临时性的用例编写模板:GIVEN...WHEN…THEN。

GIVEN:表述用例的预置条件;

WHEN:表述用例的操作步骤;

THEN:表述步骤的预期结果。

让我们套用GIVEN…WHEN…THEN的模式来描述下编写用例的大致步骤:

GIVEN 你已经了解了测试用例包含的基本内容

WHEN 按照预置条件、步骤和预期结果编写用例

THEN 你会获得一条比较具有逻辑性、较标准的用例

有没有觉得很简单?

让我们再用实际案例,描述下如何用GIVEN…WHEN…THEN模板编写真实用例。以测试访问http://www.baidu.com链接这个用例为例1:

使用 GIVEN…WHEN…THEN 能够简单呈现用例前置条件、执行步骤和预期结果间的逻辑关系,并能清晰地表述一个用例。

那么,什么地方可以用 GIVEN…WHEN..THEN 这个模板呢?这个模板较之文档用例更为简洁,如下图 2 所示,对于测试用例提交故障,阐述引发故障的操作方法或故障复现方法,以及故障修复后的验证时都可以使用。

图 2 GIVEN…WHEN…THEN 模板在故障提交和故障验证中的使用

二、如何使用探索式场景联想法衍生测试用例

探索式测试更多的是一种测试风格和测试思想,要求测试人员在测试过程中不断思考、发散思维,记录、修改和更新测试方法和测试用例。场景法则是要求测试人员认真分析测试需求,了解用户使用场景,根据不同的场景进行测试。而本文讨论的探索式场景联想法,则是将探索式测试方法、场景法和联想法相结合,在已有测试用例的基础上衍生更多的测试用例。

那么,如何使用探索式场景联想法衍生测试用例呢?

由上一节可知,测试用例是指导测试人员在xx预知条件(场景)下,执行xx步骤,预期得到 xx 结论。显而可见,通过改变测试用例的预知条件和操作步骤,则可以衍生出不同的测试用例。而这些测试用例包含不同的测试场景和不同的测试步骤。如下图 3 所示,为探索式场景联想法衍生测试用例的结构脑图。

图 3 探索式场景联想法衍生测试用例结构脑图

1.改变前置条件

测试用例的前置条件基本包括:硬件资源和软件系统两个部分。硬件资源又包括:底层操作系统,磁盘、内存、cpu 使用率等硬件资源,和静态配置;软件资源包括:依赖软件,交互软件(对内软件和对外软件)。改变前置条件可以从这几方面入手。

以上节的访问 http://www.baidu.com 链接用例 1 为例,改变前置条件衍生新的测试用例。由于该用例的前置条件较简单,改变前置条件只需改变浏览器类型和版本即可。由此,衍生的部分测试用例可如下所示:


2.改变操作步骤

改变用例操作步骤可以从以下几方面入手:插入步骤、删除步骤、改变步骤和重复步骤。

·插入步骤

如图 3 所示,插入步骤又可以分为插入相关联步骤和不相关联步骤。并在插入步骤中增加用户输入。同样以用例 1 为例,插入步骤衍生的测试用例可如下:

·删除步骤

删除步骤可以分为删除部分步骤或者删除部分步骤中的部分操作。删除部分步骤,又可以分为删除关键步骤和非关键步骤。例如,以例 1 为例,删除关键步骤“点击键盘回车键“衍生新的测试用例如下所示:

添加微信:atstudy-js  或者扫描下方二维码,备注“博客”邀请你进入Python自动化测试学习交流群~


TAG:

 

评分:0

我来说两句

Open Toolbar