功能测试-----等价类法

一、等价类测试方法

举例:——你是一名初入茅庐的职场小白,进入公司后,给你了一份需求文档,让你了解项目需求,过一段时间就准备让你写用例。经过了解,项目只有三个功能。

需求如下:输入三个数值,判断能否组成三角形。

------------------------------------------------------------------------------------------------

在过程中重要的是要学习 测试用例的设计思路

S1:把需求从文字方式转成界面;

通过界面的方式更直观

三角形界面
a边
b边
c边

                                                                        确定按钮

S2:界面上有多少功能

确定都有那些功能

S3:针对每个功能,分析包括那些输入项

经过分析得知有a边、b边、c边三个输入项(文本框)

S4:分析每个输入项的组成规则

1、类型(本需求只限数字)

  • 数字
  • 字母
  • 图片
  • 文字
  • 特殊符号

2、长度(需求限制长度1-18位)

3、取值范围(已确认范围限制在0-10000)

根据需求查看具体取值范围,如果需求没有明确给出,需要找产品设计人员确认

4、可否为空(三角形的边不能为空或者0)

空格需要特别关注,是否过滤或者算特殊符号

5、能否重复(需求给出可以重复)

6、其他规则(需求给出小数点后最多有两位)

S5:针对输入规则,构造测试数据

首先构造符合需求的正常数据

符合需求的正常情况

1、先输入一串正常的数据,判断软件的功能是否正常

2、在有效数据中随机选择一个正整数和一个正小数(小数点后两位)

由于资源有限,我们只在1--10000里随机抽取一个进行测试

时间充裕的情况下可随机多个进行测试

输入正常数据:

1、正整数:500

2、正小数:500.05

不符合需求的异常情况

输入异常测试数据,可进行异常测试。观察功能是否反馈正常,检查软件对于异常的情况,有没有一个友好的处理

1、类型

  • 字母--b
  • 图片--无法输入
  • 文字--王
  • 特殊符号--@

2、长度--超过18位

3、取值范围

异常情况,需要设计一个1-10000之外的数字

  • 12000
  • -2

4、可否为空

测试不输入或者输入空格

5、能否重复

需求中说明可以重复,这里就不需要在构造数据

6、其他规则

  • 500.005

其他规则中说明小数点后只允许两位,这里设计异常数据,构造小数点后三位的数据

异常情况的数据

  • b
  • @
  • 00000000000000000000000000089(超过18位)
  • 12000
  • 2
  • null
  • 空格
  • 500.005

S6:

1、用例编号
  项目代号-测试阶段-测试依据-用例编号
  SJX-ST-SRS001-001


2、用例标题
  条件+结果
    在某某条件下, 进行某某的正常/异常测试
  例:
    三遍均为小于10000的正整数, 检查是否能组成三角形
    三遍均为小于10000的正整数, 进行三角形功能的正常情况测试


3、项目名称
  所属模块
  /项目名/模块名/....
  例
    /三角形功能


4、优先级
  高        /       中       /       低


5、预置条件/前置条件



6、操作步骤
  1.打开软件
  2.分别输入a, b, c三边的值
  3.点击"确定"按钮


7、输入数据
  a边: 500
  b边:600
  c边:700


8、预期结果
  期望结果
  验证出现提示信息"能组成三角形"

二、等价类法
  任何输入都可以分为有效输入和无效输入两种


  其中有效的输入叫做有效等价类


    随机选取有效输入中的至少一种情况


    用这种情况代表所有情况


    因为这种情况和其他所有情况是等价的


  其中无效的输入叫做无效等价类


    把所有可能的情况进行分类, 每一类中随机选取一种情况进行测试


    这样我们就覆盖了所有的输入类型


  a边有9条异常情况
  b边也有9条异常情况
  c边也有9条异常情况


  还有2条正常情况


  所以按照等价类的思想, 可以设计29条测试用例


  三个输入框,都是异常输入的话, 一般只有一个异常提示
  那么我们应该每个输入框分别进行一次异常测试, 而不是组合三个输入框都异常一起测试

三、总结


  1、等价类设计方法的最终目标:


    覆盖独立输入的有效数据和无效数据的所有情况
    先把输入按组成规则分类, 每个类中选择一种情况进行测试


  2、等价类方法的理论来源


  为什么要用等价类的方法设计测试用例?
  因为资源有限,但是测试数据是无限的
  所以等价类就是我们的解决方法
  时间充分的时候,允许一个等价类中选取多个数据
  但是至少每个等价类中要选取1个数据


  3、使用等价类法构建测试用例的步骤

见S1,S2,S3,S4,S5,S6

四、等价类法的优缺点

优点:简单高效

缺点:测试用例设计的不充分,只考虑独立输入的有效和无效覆盖,没有考虑输入之间的关联关系。数据是随机选取的, 可能漏掉缺陷。
 

你可能感兴趣的:(功能测试)