如何根据需求设计测试用例?

  从拿到需求文档不要立马开始着手写测试用例,需要仔细推敲整理需求,画出系统级、模块内流程图,并找出各种测试点,等对需求进行了头脑风暴般的整理之后,此时已对测试系统的功能很清楚了,再着手开始写测试用例。那么编写测试用例的总体思路是什么呢?通过半年的测试用例编写经验,总结如下,如有不妥之处需改进。

  1、整理分析需求文档

  仔细将需求文档文档阅读一遍,记录不明白的地方及关键测试点,简单画出总体流程图。然后再来一遍,仔细分析各个模块的功能,画出模块内流程图,找出所有功能,并列出主要测试点

  2、编写用例

  按照不同的业务规则可将测试用例分为四部分:场景用例、系统用例、功能用例

  场景用例:按照用户的实际操作与业务逻辑设计用例,不必涉及很复杂的操作或逻辑,把用户常用的、正常的操作流程作为一个场景设计测试用例。

  系统用例:是用户场景的细化,包含正常场景、分支场景和异常场景,是两个或多个有关联的功能组合而成的场景。

  功能用例:用于验证各功能点的业务规则,包括界面元素和各功能的业务规则验证。主要针对单个功能点。

  第一步:场景用例(关键字:模拟用户实际操作)

  根据画出的模块内流程图,描述用户的主要业务目标,包含完整的系统级场景和模拟用户实际操作的不同场景,几个功能点的组合也算是用户场景。

  第二步:系统各角色的系统用例

  结合画出的模块内流程图,将系统划分多个角色,再将每个角色分解为多个任务,每个任务是一个系统用例。系统用例分别正常流程、异常流程,分支流程,以场景的形式描述。

  第三步:功能用例

  描述单点功能的逻辑规则及页面元素,分层描述逻辑规则,对逻辑规则细化可直接作为用例的操作步骤描述。

  编写用例的过程中也有一些迷茫:

  问题1:场景法用什么方式描述比较清楚,并且后期需求改动了易维护?

  问题2:测试用例与测试数据的关系是什么呢?如何将两者区分开来?

  3、报表类功能模块如何编写测试用例?

  报表类的模块基本没有业务流,不适用场景法。其实报表类模块主要验证能否依据查询条件正确查询显示数据,并保证数据的正确性。可将测试用例分为功能点测试用例和报表数据正确性验证。