软件测试等价类划分实例_软件测试原则

软件测试等价类划分实例_软件测试原则等价类的设计思路:根据输入条件,确定等价类,包括有效等价类和无效等价类,建立等价类列表为每个等价类规定一个唯一的编号设计一个测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类被覆盖完为止设计一个测试用例,使其尽可能多的覆盖尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类被覆盖完为止1、三角形–等价类测试的例子某程序规定:"输入三个整数 a 、 b 、 c…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

等价类的设计思路:
  • 根据输入条件,确定等价类,包括有效等价类和无效等价类,建立等价类列表
  • 为每个等价类规定一个唯一的编号
  • 设计一个测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类被覆盖完为止
  • 设计一个测试用例,使其尽可能多的覆盖尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类被覆盖完为止
1、三角形–等价类测试的例子

某程序规定:输入三个整数 a  b  c 分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算 … “。用等价类划分方法为该程序进行测试用例设计。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。)
  
分析题目中给出和隐含的对输入条件的要求: 
  
1)整数    2)三个数    3)非零数   4)正数   
  
5)两边之和大于第三边     6)等腰     7)等边 
   
如果 a  b  c 满足条件( 1  ~  4 ),则输出下列四种情况之一:
   1)
如果不满足条件(5),则程序输出为 ” 非三角形 ” 
   2)
如果三条边相等即满足条件(7),则程序输出为 ” 等边三角形 ” 
   3)
如果只有两条边相等、即满足条件(6),则程序输出为 ” 等腰三角形 ” 
   4)
如果三条边都不相等,则程序输出为 ” 一般三角形 ”  
   
列出等价类表并编号

软件测试等价类划分实例_软件测试原则

覆盖有效等价类的测试用例:
    a      b      c              
覆盖等价类号码
    3      4      5             
17
    4      4      5             
17),(8
    4      5      5             
17),(9    
    5      4      5             
17),(10
    4      4      4             
17),(11
   
覆盖无效等价类的测试用例:

软件测试等价类划分实例_软件测试原则

2、档案管理系统–等价类的例子

设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在19901~204912月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的日期检查功能

输入判断
有效等价类
编号
无效等价类
编号
输入字符长度
6位
大于6位数字字符
小于6位数字字符
输入字符类型
数字
6位非纯数字字符
输入年份约束
1990-2049
大于2049
小于1990
输入月份约束
01-12
大于12
等于00


3、佣金问题–等价类的例子
佣金问题等价类测试用例,它是根据佣金函数的输出值域定义等价类,来改进测试用例集合。
输出销售额≤1000     佣金10
1000<
销售额≤1800     佣金=100+(销售额-1000)*15%
销售额>1800              佣金=220+(销售额-1800)*20%
测试用例         枪机(45)    枪托(30)      枪管(25)          销售额     佣金
    1               5             5                5                  500        50
    2              15           15              15                 1500       175
    3              25           25              25                 2500       360
根据输出域选择输入值,使落在输出域等价类内,可以结合弱健壮测试用例结合。
佣金问题分三个部分:输入数据部分,用来处理数据有效性(与三角形和档案系统管理中的一样);销售额计算;佣金计算。由于题目要求,根据佣金函数的输出值定义等价类,所以可以省略输入数据有效性部分。测试用例设计如下:
测试用例
枪机(45)
枪托(30)
枪管(25)
销售额
佣金
备注
1
1
1
1
100
10
最小值
2
1
1
2
125
12.5
略大于最小值
3
1
2
1
130
13
略大于最小值
4
2
1
1
145
14.5
略大于最小值
5
5
5
5
500
50
中点
6
10
10 
9
975
97.5
略小于边界值
7
10
10
10
1000
100
边界值
8
10
10
11
1025
103.75
略高于边界值
9
14
14
14
1400
160
中点
10
18
18
17
1775
216.25
略低于边界值
11
18
18
18
1800
220
边界值
12
18
18
19
1825
225
略高于边界值
13
48
48
48
4800
820
中点
14
69
80
90
7755
1411
略低于边界值
15
70
80
89
7775
1415
略低于边界值
16
70
80
90
7800
1420
输出最大值

此外还可以选取更接近于边界值得测试用例,比如:

测试用例
枪机
枪托
枪管
销售额
佣金
备注
1
10
11
9
1005
100.75
略高于边界值
2
18
17
19
1795
219.25
略低于边界值
3
18
19
17
1805
221
略高于边界值
4、找零问题–等价类的例子
假 设 商 店 货 品 价 格 (R) 皆 不 大 於 100 元 ( 且 为 整 数 ) , 若 顾 客 付 款 在 100 元 内 (P) , 求 找 给 顾 客 之 最 少 货币 个(张) 数 ? ( 货 币 面 值 50 元 (N50) , 10 元 (N10) , 5 元 (N5) , 1 元 (N1) 四 种 ) 正确功能:找零的组合为1/10/50面值组合的最小个(张)数

 找零数额=P-R 
假设计算正确
 一、 分 析 输 入 的 情 形 。
 1.R无效: R > 100 R<=0 
 2.R有效: 0 < R < = 100 此种情况下再考虑P: 
    2_1. P无效:P > 100 (钱给多) 
    2_2. P无效:P < R (钱给少) 
    2_3. P有效:R<= P <= 100 //无效输出: 多找钱 少找钱 
 二、 分 析 输 出 情 形 。
 考虑输出——找零个数 这里是有效数据,关于“ 找 给 顾 客 之 最 少 货币 个(张) 数”的有效取值 
50:找钱面值为50元的有两种情况: 0张或/1张 
10:找钱面值为10元的有五种情况: 0/1/2/3/4 
5 :找钱面值为5元的有两种情况: 0/1 
1 :找钱面值为1元的有五种情况:0/1/2/3/4 
 三、 分 析 规 格 中 每 一 决 策 点 之 情 形 考虑输出——找零数额(RR表示找零数额) 
 1、无效输入(不找零): R > 100 R <= 0 0 < R < = 100 P > 100 0 < R < = 100 P < R 输出为相应错误提示信息。
 2、有效输入(找零): 
0 < R < = 100    &&  R<= P <= 100 
      此时考虑的输出:(RR=P-R 假设计算正确 不考虑此种情况无效输出) 
      0<=RR<5 5<=RR<10 10<=RR<50 50<=RR<100  
      用边界值分析法,取RR的有代表性的值,
五、为 满 足 以 上 之 各 种 情 形 , 测 试 用 例 设 计 如 下 : 
1. 货品价格 = 101       无效货品价格 
2. 货品价格 = 0         无效货品价格 
3.货品价格 = -1          无效货品价格 
4. 货品价格 = 100, 付款金额 = 101     无效付款 
5. 货品价格 = 100, 付款金额 = 99      无效付款 
6. 货品价格 = 100, 付款金额 = 100   不找零 
7. 货品价格 = 99, 付款金额 = 100    N1=1 
8. 货品价格 = 96, 付款金额 = 100    N1=4 
9. 货品价格 = 95, 付款金额 = 100    N5=1 
10. 货品价格 = 91, 付款金额 = 100   N5=1, N1=4 
11. 货品价格 = 90, 付款金额 = 100   N10=1 
12. 货品价格 = 51, 付款金额 = 100   N10=4, N5=1,N1=4 
13. 货品价格 = 50, 付款金额 = 100   N50=1 
14. 货品价格 = 1, 付款金额 = 100    N50=1,N10=4,N5=1,N1=4
 
5手机号录入 例子
软件测试等价类划分实例_软件测试原则
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/184370.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 阿里云服务器搭建及项目部署过程—小白篇

    阿里云服务器搭建及项目部署过程—小白篇最近学习了前后端的相关技术,就想租一个服务器试一下,玩一玩,简单了解了一下阿里云的服务器,简单介绍一下:一:什么是云服务器ECS是阿里云产品体系中,最基础的计算服务,通常用作应用程序的运行环境,最重要的特点是弹性。二:基础运行环境用户的应用程序运行在实例的操作系统上三:特点弹性:容量不够可以直接在云服务器上扩展配置,只要直接补差价成本:0运维,支持包年包月或按量计费…

    2022年6月23日
    43
  • HeadSetup出现安全漏洞 恐使用户机密资讯外泄[通俗易懂]

    HeadSetup出现安全漏洞 恐使用户机密资讯外泄[通俗易懂]HeadSetup出现安全漏洞 恐使用户机密资讯外泄

    2022年4月21日
    55
  • 机器学习之模型评估

    '没有测量,就没有科学'这是科学家门捷列夫的名言。在计算机科学特别是机器学习领域中,对模型的评估同样至关重要,只有选择与问题相匹配的评估方法,才能快速地发现模型选择或训练过程中出现的问

    2021年12月30日
    64
  • Oracle提权[通俗易懂]

    Oracle提权[通俗易懂]三种方式1.普通用户模式:拥有一个普通的oracle连接账号,不需要DBA权限,可提权至DBA,并以oracle实例运行的权限执行操作系统命令2.DBA用户模式:(自动化工具)sqlmap–is-dba测试是否是dba权限拥有DBA账号密码,可以省去自己手动创建存储过程的繁琐步骤,一键执行测试3.注入提升模式:(sqlmap)拥有一个oracle注入点,可以通过注入点执行系统命令,此种模式没有实现回显,需要自己验证。三种方式的提权工具…

    2022年9月26日
    0
  • 【数据库】谈谈group by[通俗易懂]

    【数据库】谈谈group by[通俗易懂]【数据库】谈谈group by

    2022年4月25日
    73
  • VMWare虚拟机的三种网络配置

    VMWare虚拟机的三种网络配置背景:当前物理机ip:192.168.18.8,路由器IP:192.168.18.1(相当于网关)我学习linux系统时,在主机上配置了二种网络类型,其中NAT模式不需要关闭防火墙即可与主机相互pin

    2022年7月1日
    22

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号