发布新日志

  • 基于风险的测试策略

    2017-09-11 12:43:26

      在日常的测试过程中需要在测试时间、成本和质量的三角形中找到一个平衡点,形成质量平衡,这往往需要借助基于风险的测试策略。就以我们用例设计的技术中的等价类划分法,其也是基于风险的策略。
      谈到风险,如何划分风险的呢?
      通常需要根据风险发生的概率和风险的重要性进行画出一个交叉表,然后确定分值,划分风险的优先级。
      之后就可以开展基于风险的测试策略
      1、根据测试风险的分析和评估得到的各功能点的风险分布,确定测试的优先级
       功能越重要,风险越大概率越高,测试优先级就越高
     2、确定测试功能点是否完备
       功能点完备是避免漏测和进行风险划分的必要条件,根据时间确定各个功能点的覆盖完备程度,风险越高,完备程度越高;
     3、根据风险等级和功能优先级分配测试资源
       高风险和高功能优先级的分配高级别测试资源
     4、根据风险级别分配有限的测试时间
       将有限的时间分配到高风险的测试上面,进而降低测试风险;
     5、将剩余的风险体现在测试报告中;
  • 基于模型的测试方法

    2017-09-11 12:34:38

    一、过程

    操作步骤:

    1、        根据需求规格说明书创建模型(行为模型);

    2、        根据模型自动生成测试用例和期望结果;

    3、        执行用例并收集执行结果;

    4、        对结果进行分析反馈给需求说明书和模型;

    二、具体操作步骤

         1、确定业务流程;

            1)、创建系统级别的业务流图

            2)、创建单个模块的业务流图

         例如:Mpos交易路由业务流图

     2、对各项业务流程进行建模(Mpos业务流程为例)

          通过有限状态机创建状态模型

         1)、根据Mpos业务流程,收集状态

               共有9个状态,包括:

    1、        开始状态;

    2、        已刷卡状态;

    3、        已筛选身份状态;

    4、        已成本规则状态;

    5、        拿到合适的身份

    6、        结束状态

          2)、收集状态改变相关的操作

                 共有7个,包括:

    1、        刷卡消费;

    2、        机构规则、路由规则筛选;

    3、        成本规则筛选;

    4、        适用范围筛选;


          3)、画出业务的状态模型图(框体中为状态、链接线为操作)

                 4)、封装所有的业务操作,方法体中为输入的属性

              1、刷卡消费

                Int flushCard(){

                  Int cardNum;

                  Int cardTime;

                   …….

    }

    对于前期准备例如录入数据没有明显的状态,因此无法使用有限状态机模型,此时需要采用活动图建模(UML建模)(例如数据准备,前期数据录入系统)

    活动图是有一系列的操作构成没有状态。处理过程如下:

    (1)、画出活动图(由一系列的操作集构成)

    (2)、封装操作方法,例如

    创建用户

    Int CreateUser(){

    Int userID;

    String username;

    ……..

    }

             

         3、使用工具解析模型;

    4、生成用例和预期结果,运行

             实现测试工具可以识别模型,并使用不同的算法遍历的方法找到所有可能的操作路径,进而自动生成测试代码。(34合并)

             工具的基本功能描述如下:

    1、        建模功能:根据需求规格说明书在工具中手工创建模型;

    2、        识别模型中操作:识别模型中的所有操作形成业务抽象库;

    3、        遍历模型的操作:使用不同的算法遍历模型的操作,产生不同的测试场景;列举所有的输入参数,根据输入参数自动生成测试用例存储在用例管理器中;

    算法:随机行走遍历算法、操作遍历算法、状态遍历算法共同生成用例;

    4、        通过接口适配到自动化测试执行工具:将生成的用例适配到自动化测试执行工具中根期望结果比对生成结果并分析;

Open Toolbar