背景
Restful风格的接口测试,在用例设计过程中,常常遇到接口参数过多,接口参数取值类型很多(等价类划分很多),接口参数之间存在关联的关系,这对测试用例的设计都带来的挑战,容易出现遗漏很多的测试场景,或者编写过多的测试用例且用例设计存在重复的情况。
问题
如何用尽可能少的用例覆盖足够多的测试场景,如何把握接口测试用例设计的关键点呢?
思考
接口测试用例设计,主要设计内容包括:
- 参数校验(必传、非必传)的用例设计
- 各个参数的有效等价类对应的用例设计
- 各个参数的无效等价类对应的用例设计
- 关联参数之间组合的测试用例
- 其他一些功能场景的补充
- 一些极端场景的用例补充(无效等价类中,可能已经包含一部分)
罗列以上的信息要点后,就可以按照步骤来设计测试用例,当然,需求分析,罗列功能点,这些是必须先做的,此处不再详述。
步骤
- 将每个接口参数:字段,描述,是否必须,备注等信息放入到Excel表格,然后增加三列:有效等价类,无效等价类,说明
- 依次对每个字段进行分析,确定等价类,无效等价类划分取值,并在每个等价类取值后边,依次编号,如(1)、(2)、(3)
- 对整个接口进行分析,确定关联的字段,在说明中进行具体的描述
- 罗列返回的结果,比如:成功,失败,参数非法,网络错误等各种存在的可能情况
- 开始设计用例,先设计有效等价类的用例,每条用例,都覆盖每个参数有效等价类的其中一个有效等价类,直到所有的有效等价类都在设计的用例中被覆盖
- 设计无效等价类用例,每次只覆盖一个参数的无效等价类,避免无效等价类的结果覆盖
- 分析关联字段的关系,确定组合参数取值是否正确或者有遗漏,相应的更新或增加用例
- 分析业务场景,增加业务场景的用例
- 整体进行检查,并参照罗列的测试点、功能点,确定是否存在遗漏,如有,继续进行补充
- 将用例与开发同事进行审核,相应更新
- 在空余的时候,多想想业务场景,多次确认是否存在没有覆盖的业务场景,并补充测试用例。
写用例不难,难的是如何写出完备的测试用例,覆盖足够多的场景