测试用例设计方法之等价类和边界值

1、等价类划分法

(1)简介

  • 等价类就是某个输入域的子集。
  • 等价类划分法是把所有可能的输入数据集合划分成若干个子集,每个子集内的元素对于揭露程序中的错误都是等效的,在每个等价类中取一两个数据作为测试的输入数据即可,这样就可以用少量代表性的测试数据取得较好的测试效果。
  • 等价类又划分为 “有效等价类” 和 “无效等价类”。
  • 有效等价类,就是符合需求规格说明书要求的合理、有意义的输入数据集合。利用有效等价类可检验程序是否完整实现了需求所规定的功能以及功能的实现是否正确符合预期。(简言之,有效等价类校验功能是否做完了且做得是否正确。)
  • 无效等价类,与有效等价类恰好相反。无效等价类是指那些不合理的、无意义的输入数据所构成的集合。这类测试数据可反向验证功能的正确性和程序的容错处理。

(2)设计用例步骤

  • 第一步、依据需求规格说明书,确定输入数据的范围。
  • 第二步、将输入数据的范围划分成若干个互无交集的有效等价类。接着确定无效等价类包含的输入数据。
  • 第三步、分别从每个等价类中提取一两个有代表性的数据作为测试数据。一般的,每提取出一个数据就可设计一条测试用例,或根据实际业务需求用最少数量的用例覆盖最多的测试场景。

(3)举例

  • 例子1、测试聊天功能的内容输入框:可输入文本,最多只能输入100个字符。
    • 第一步、确定输入数据的范围:文本。  
    • 第二步、划分等价类。  
    • 有效等价类   
编号等价类取值
1数字正数、负数、整数、小数、零
2汉字简体、繁体
3字母大写、小写
4符号中文符号、英文符号
5表情符号表情、图像表情
6他国语言韩语、日语、英语
    • 无效等价类  
编号等价类取值
1特殊符号空格、回车
2超过100个字符200个字符
  • 第三步、根据划分的等价类编写测试  
  • (说明:以下测试用例只是为了快速示意,并不是标准的测试用例书写方式。)  
编号输入数据预期结果
case1正数

发送者:可输入和发送成功
接收者:可接收和显示正确

case2负数
case3整数
case4小数
case5
case6简体
case7繁体
case8大写
case9小写
case10中文符合
case11英文符合
case12符号表情
case13图片表情
case14韩语
case15日语
case16空格发送者:发送失败并提示
case17回车
case18输入超出长度:200超出的字符自动屏蔽输入

2、边界值分析法 

(1)简介

  • 边界值分析是通过选取指定数据域的“上点”“内点”“离点”来测试输入或输出的边界。
  • 上点:就是边界上的点,无论域是开区间还是闭区间。若是开区间,上点在域外;若是闭区间,上点就在域内。
  • 离点:是指离“上点”最近得点,这里跟待测数据域是闭区间还是开区间有关系。如果是开区间,那么离点就在域内;如果是闭区间,那么离点就在域外。
  • 内点:域内的任意点都是内点。

(2)设计用例步骤

  • 第一步、确定测试域。
  • 第二步、选取“上点”“内点”“离点”。
  • 第三步、每个“上点”和“离点”就是一条用例,“内点”可选取代表性的中点创建一条用例。

(3)举例

  • 例子1、测试聊天功能的内容输入框:可输入文本,最多只能输入100个字符。
  • (我们继续使用“例子1”来说明,对其补充测试点。)
    • 第一步、“最多只能输入100个字符”可确定输入的长度范围,用闭区间[1,100] 或 半开区间(0,100]表示。
    • 第二步、[1,100]的上点:1、100,内点:50,离点:0,101;
    • (0,100]的上点:0,100,内点:50,离点:1,101。
    • 可以看到两种不同的区间表示方式,最终取到的测试数据都是一样的。
    • 第三步、根据选取的点编写测试用例。
编号输入数据预期结果
case191个字符发送者:可输入和发送成功
接收者:可接收和显示正确
case20100个字符
case2150个字符
case220(什么也不输入)发送者:发送失败并提示
case23101个字符超出的字符自动屏蔽输入
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值