目录
- 功能图法原理介绍
- 功能图法步骤
- 案例:以QQ登录界面为例
功能图法原理介绍
功能图方法其实是一种灰盒测试(因其兼有黑盒和白盒测试)用例设计方法;通常情况一个程序的功能说明通常由动态说明和静态说明组成,动态说明描述了输入数据的次序或转移的次序,静态说明描述了输入条件与输出条件之间的对应关系,用功能图形象地表示程序的功能说明,并机械地生成功能图的测试用例。
功能图法也叫做状态迁徙图。
- 来源:在遇到有事务流或由于某种条件成立导致状态改变的软件时,如何进行测试用例的设计就比较麻烦。
- 适用场合:软件的状态会根据某些内容、条件、操作的变化而变化
- 目标:尽可能覆盖软件的状态、状态-条件的组合、状态的变迁路径
功能图法步骤
- 列出所有可能得输入条件,以 input N 的方式命名(N 为 1、2、3、4……)
- 把软件打开的初始页面状态,定义为“空闲”状态
- 在“空闲”状态上加所有可能的输入(只加一次)
- 为第3步产生的所有新状态加操作(只加一次,曾经加过的操作,不再重复添加)
- 循环为所有的新增状态添加操作,直到没有新状态产生产生为止
- 组合任意的状态,以列表的形式展现,设计和编写测试用例
案例:以QQ登录界面为例
- 识别出可以进行的操作
IP 1:输入账号
IP 2:输入密码
IP 3:点击登录按钮
IP 4:点击关闭按钮
IP n:.……(由于操作还很多,作为例子 找回密码、注册账号等操作在此忽略)
-
定义 QQ 登录界面为 空闲 状态
-
给空闲状态加操作
-
产生了新的状态。针对新的状态进行分析(第二轮):
-
产生了新的状态,针对新的状态进行分析(第三轮)
虽然得到了一个全新的界面(状态),但是和空闲状态发生了“隔断”,因此将其视为空闲状态的结束。可以结束分析过程。 -
将状态变化过程列表化,准备设计测试用例。
设计用例:
1) A列:从QQ的登录界面,直接点击关闭按钮,QQ登录退出
……
N)D列:从QQ的登录界面,先输入 QQ 号(状态变为QQ号已输入);再输入密码(状态变为 QQ号、密码已输入);点击登录(状态变为 QQ主界面)
excel写用例: