对于测试人员来说,流程类测试是测试过程中必不可少的一类,那有哪些方法技巧能够保证流程类测试用例的设计比较高效呢?牛鹭学院今天就分享给大家:
流程类测试方法主要有四类,语句覆盖、分支覆盖、全覆盖、最小无关覆盖。语句覆盖和分支覆盖的覆盖面相对比较窄,其场景主要适用在单元测试和集成测试中;全覆盖工作量比较大,常见于业务流程都比较重要且需要全部覆盖的场景;最小无关覆盖是相对最优的选择,性价比最高,可以适用于各个测试阶段和测试场景。
流程类用例设计四步走:
- 流程图分解
- 测试点整理
- 测试数据填充
- 测试场景完善
步骤一:流程图分解原则是每个流程图都只有一个输入和一个输出;
步骤二:根据分解后的流程图进行测试点整理;可以根据全覆盖或者最小无关覆盖进行编写;
步骤三:根据等价类、边界值、正交法整理测试数据,填充到测试点中;
步骤四:根据产品设计流程、业务处理流程、线上应用场景等补充和完善测试场景;
举个例子,从北京到上海可以有多种交通工具,飞机、火车、汽车、骑车都可以。假定飞机是从首都机场到上海虹桥机场,火车是从北京西站到上海站,汽车是从北京天安门到上海外滩,骑车是从北京颐和园到上海迪士尼。
通过步骤一,可以将只有一个输入和一个输出的先找出来,比如乘坐飞机模式下的首都机场和上海虹桥机场。
通过步骤二,可以将分解后的流程图肢解出一个一个的单点,比如说首都机场到上海虹桥机场,可以有两种类型,直飞或者中转,每种类型又有多个航班和日期可供选择。
通过步骤三,可以细化单个测试点的数据输入,如飞机的大小、起飞落地时间、起飞日期、机票价格、航空公司等。
通过步骤四,可以根据实际多种场景补充和完善,如天气模拟、特殊节假日模式、突发事件模拟等。步骤四阶段补充设计的测试用例通常属于系统级别类的,需要对产品实现、业务流程、客户真实场景等非常的熟悉。
通过以下两个流程图来具体示例:
示例一:
客户通过企业WIFI进行网络连接场景,有两种连接方式,公共WIFI(无需密码即可以登录)和内部WIFI(需要密码才可以登录)。比较典型的单输入两输出场景。
步骤一:分解流程图
第一次分解如下,其实还不满足只有一个输入和输出;需要进行二次分解
第二次分解如下
步骤二:整理测试点
根据全覆盖,可以分为五个测试点
步骤三:
填充测试数据,手机机型、选择WIFI名称、密码设置、连接成功验证等。
步骤四:
补充测试场景,连接内部WIFI时不输入密码、在不同位置连接WIFI、WIFI和数据网络同时连接、WIFI上传下载速率等。
示例二:
用户使用不同的开锁方式进行手机解锁,假设设定了三种解锁方式(指纹解锁、密码解锁、图案解锁),连续三次解锁失败则锁定(一定时间内禁止解锁)。比较典型的多输入多输出场景。
步骤一:分解流程图
步骤二:整理测试点
原来的流程图分解为了6个小流程图,从左到右依次为图1-图6。
图1分解为3个测试点,图2为1个,图3-6与图1-2类似,故图1-6分解为12个测试点。
步骤三:
填充测试数据,指纹解锁(几个指纹、那个手指等)、密码解锁(密码难易度、密码长度等)、图案解锁(图案复杂度等);
步骤四:
补充测试场景,指纹解锁(有汗、有灰尘等场景下)、各种解锁场景交叉和跳跃(比如第一次指纹、第二次密码、第三次图案等)、异常场景模拟(一种解锁方式连续失败三次后,一定时间内停止解锁,在这个时间段内尝试切换为另一种解锁方式,在这个时间段外尝试另一种解锁方式)、多种解锁方式反复解锁等。
流程类的测试用例设计,可以理解为路径的选择和覆盖。流程类用例设计四步走(流程图分解;测试点整理;测试数据填充;测试场景完善),我们可以用八字口诀法简单记忆:分路、选路、铺路、补路;其中分路类比流程图分解、选路类比测试点整理、铺路类比测试数据填充、补路类比测试场景完善。
用例的编写需要非常多的经验积累和实战操作,编写方法本身不难,但是应用起来会变幻莫测,尤其是在最后一步“测试场景完善”中,你的测试功底(包括业务能力和技术能力)有多深,会体现的非常明显。
————————————————
获取更多课程资讯、技术干货、学员笔记,关注牛鹭学院官方公众号:牛鹭软件测试训练营