[转载]自动化测试实施时的关键概念

上一篇 / 下一篇  2008-12-03 10:44:03 / 个人分类:自动化框架

在进行自动化测试实施时,由于要涉及软件开发方、业务方、手工测试方、自动化测试方、测试管理方等不同的机构或单位,尤其是业务方的人员和软件测试的人员对软件测试的认识处于不同的理解层次,因此,需要自动化测试的实施组事先对自动化测试中要使用的一些概念向各个机构或单位普及,才能使大家在脑海中建立相同的概念范畴,使得自动化测试的实施事半功倍。

  我把曾经在建立自动化测试体系的过程中规定的一些主要的自动化测试名词分享给大家,以期参考:)

(1)测试需求:

  是指在一定的测试策略前提下,对应于验证某个系统的业务需求或功能需求的测试要求


  对应于不同的测试目的,分为验证业务过程的流程类测试需求和验证功能点的功能性测试需求


  对于功能性测试需求的业务规则是指测试功能点的属性描述,包括数据规则、业务逻辑规则、用户操作(输入和输出)的约束规则等;

  对于流程性测试需求的业务规则主要是指业务流程分支条件,及其对应的流程处理逻辑规则。


  在自动化测试体系中,测试需求按照树型结构进行组织,树上存在叶节点和非叶节点

(2)交易分支:

  基于确定的交易,是交易执行中一个不可再分顺序路径。


  一般而言,一个交易被执行的时候,存在多个执行路径。例如:对于活期续存,信用卡续存、借记卡续存就是不同的执行路径。


  一个交易分支,就是一个交易的栏位的输入执行序列,包括在什么位置、输入数据的类型、限制约束、有效条件、格式要求等。

(3)业务组件:

  一种易于维护且可重复使用的单元,该单元包含执行特定任务的一个或多个步骤。


  一个业务组件一般映射到一个交易分支,是自动化测试体系中颗粒度最小的工件


  定义业务组件的目的是为了封装固定的测试执行步骤,在测试过程中以“引用”的方式进行调用和复用,以减少测试过程设计开发的工作

  在自动化测试系统中,业务测试过程对业务组件的一次“引用”也是业务组件的一次实例化过程


  业务组件是一系列执行步骤,可以在不同测试过程中因为不同的目的(如边界值,无效等价值,有效等价值)使用不同组的数据完成输入,得到不同的业务组件实例。


  业务组件可能需要来自外部源或其他组件的输入值,并可向其他组件返回输出值

(4)业务过程:

  业务过程是对业务流的实现


  业务过程是一组交易分支的序列,不是一个孤立的行为,如一次任务,一次输入或一次输出,而是以为用户带来附加值的输出或结果告终的一系列活动。


  例如:以开户交易开始,然后存款到相应的账户,最后能查询到此笔存款结束。


  一个业务过程对应于相应业务流中的一条“路径”即一个业务规则
需要注意的是,业务过程是不存在由于业务逻辑不同而产生的分支的,如果在业务流程中存在分支,则应该拆分为不同的业务过程

(5)业务测试过程:

  每个业务测试过程完成一个对流程类测试需求叶子节点的具体验证。

  每个业务测试过程是独立的,不允许嵌套,并且之间没有关系,业务测试过程原则上是可以独立执行的完整“业务流”。


  业务测试过程之间的关系是间接的,通过测试需求组合在一起的。


  业务测试过程由关联在一起的一系列业务组件组成,这些业务组件都需要在业务测试过程中指定明确的执行时输入、输出数据,以及业务组件和业务组件之间的数据依赖关系、顺序依赖关系、时序依赖关系等关联。
可以说,业务测试过程是一组具有依赖关系的业务组件,和执行时数据的集合。

(6)测试运行计划:

  主要描述为完成系统的测试,按照测试方案的设计思想,参照业务测试过程,如何对业务测试过程进行组织,以及执行时的先后组合操作顺序及业务测试过程间的关联数据


  (原则上不建议按照测试过程间有关联来设计测试)。

  如果测试方案或测试过程发生变化,则要对运行计划进行及时的更新


TAG: 自动化框架

 

评分:0

我来说两句

Open Toolbar