黑盒测试用例测试方法

黑盒测试用例测试方法黑盒测试用例设计方法一、等价类划分法等价类划分法是一种典型的、重要的黑盒测试方法,是指某个输入域的子集合。在该子集合中,所有的输入数据对于揭露软件中的错误都是等效的。等价类划分有效等价类和无效等价类例如:微信红包的例子【0.01-200】按数据范围划分:有效的:0.01-200(1)无效的:小于0.01(2)…

大家好,又见面了,我是你们的朋友全栈君。


黑盒测试用例设计方法
一、等价类划分法
等价类划分法是一种典型的、重要的黑盒测试方法,是指某个输入域的子集合。在该子集合中,所有的输入数据对于揭露软件中的错误都是等效的。
等价类划分有效等价类和无效等价类
例如:微信红包的例子【0.01-200】
按数据范围划分:
有效的:0.01-200(
1) 无效的:小于0.01(
2
大于200(
3
0.01-200区间小数点后超过2位的值 (
4

按数据类型组成划分:
有效:数字 (
5) 无效:非数字类型,英文,中文,特殊字符,html标签…(
6

按是否为空
有效:不为空(
7) 无效:为空(
8
等价类划分法用例设计原则
1)划分有效及无效等价类,为每一个等价类规定一个唯一的编号
2)设计一个新的测试用例数据,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止
3)设计一个新的测试用例数据,使其仅覆盖一个尚未覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止

二、边界值分析法
边界值最有可能出错
1、定义:边界值分析法是对等价类划分法的补充,边界值一般都是从等价类的边缘去寻找。边界值分析的基本思路:正好等于、刚刚大于、刚刚小于边界值作为测试数据。0.01、200
注意:0是一个特殊值,我们在考虑边界值的时候同时也要考虑这个特殊值。负数
2、边界值的作用:人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误!
3、举例子:
eg:比如我们生活中大家所熟悉的微信红包:最小金额0.01,最大金额200元
边界值:
0,0.01,0.02,199.99,200,200.01
特殊值:负数
测试点 测试数据 测试覆盖 边界值
输入正确的红包金额【0.01,200】 10 (1)(5)(7) 0.01,0.02,199.99,200
红包输入小于0.01的金额 0 (2) 0
红包金额输入大于200的金额 201 (3) 200.01
0.01-200区间小数点后超出2位的值 150.0001 (4)  
非数字类型、英文、中文、特殊字符、html标签 ¥5,$5,5元 (6)  
为空   (8)  
eg:一个输入文件应包括2-255条记录
特殊值:1,2,3,254,255,256 2-255(有效区间、无效区间)
特殊值:0
等价类划分法和边界值分析法常见运用场景
1)输入规定的取值范围或值的个数的情况(类似min<x<max、min<x、max>x);
比如用户名长度、红包金额数值输入范围
2)在输入条件是true和false两种状态的情况:
比如勾选、开关设置
单选按钮:选择、默认选择、切换选项
多选按钮:单选、全选、全不选
3)在拉列表包含多个选项的情况:比如城市下拉选项
4)在规定了输入数据必须遵守的规则情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度匹配规则);比如要求用户实名认证、非黑名单、账户资金1000元以上

以上除了等价类之外同时会涉及边界值的分析。边界值还包括以下:
1)报表的第一行、最后一行、中间一行
2)屏幕上光标在最左上、最右下位置

上课练习
注册163邮箱

*邮件地址 输入框 @163.com
6~18个字符,可使用字母、数字、下划线、需以字母开头

第一步 分类

设计输入数据
黑盒测试用例测试方法

三、场景法
1)什么是场景法
通过场景描述的
业务流程(业务逻辑),也包括代码实现逻辑,设计用例来遍历场景(路径),验证软件系统功能的正确性。
2)如何使用场景法
2.1 画出
流程图
矩形:表示步骤(操作、结果)
菱形:判断—是、否
注意:场景法的重点是测试流程,因此每个流程一个用例验证即可,流程测试没有问题并不能说明系统功能没有问题了,还需要针对
单步的功能进行测试
只有单个功能点和流程测试,才算是充分的测试

ATM取款经常遇到的场景:(一共9种)
1、成功取款(插入银行卡)
2、借记卡不合法
3、取消输入密码
4、密码错误(还有输入的机会)
5、密码错误超过3次(被吞卡)【1,3】 0,1,2,3,4
6、金额不合法(0、负数、非数值类型输入*#)
7、账户余额不足
8、ATM内现金不足
工具:在线画流程图工具
思路:
1、正常路径
2、再去根据每一个判断,找 另一个出口的路径
3、确定出错之后还能否正常,再多走一个步骤


四、错误推测法(反推法)
基于经验和直觉推测程序中所有可能存在的各种错误,从而针对性的设计测试用例的方法。它的要素共有三点,分别为:
经验、知识、直觉
(二八原则)

如何使用?
1、列举出程序中所有可能有的错误和容易发生错误的特殊情况;
2、根据他们选择测试用例
有可能已经想到的测试点,利用等价类和边界值已经覆盖到了

登录
等价类划分和边界值分析
1、正确用户名、正确密码、点击登录按钮 —-登录成功
2、错误密码
3、用户名不存在(不存在)
4、用户名错误
5、空用户名、空密码、包含空格情况
错误推断,无法通过上述方法覆盖到
6、多次输入错误密码,是否安全提示
7、修改密码后输入原密码是否支持登录
8、单点登录、多点登录、异地登录
9、网络情况测试

单点登录:一个账号只能在一个地方登录
多点登录:多个人可以登录同一账号、多个平台可以登录同一个账号;会出现重复提交

案例详解:
某平台登录页面
既然是用错误推测法,那么我们首先列出所有可能导致结果出错的情况,如下:

1、用户名跟密码的对应关系校验
2、账号或密码为空
3、用户名和密码,如果太短或者太长,应该怎么处理(安全性,密码太短时是否有提示)
满足格式要求但不是正确的
4、用户名和密码中有特殊字符(比如空格),和其他非英文的情况(是否做了校验)
5、用户名和密码前后有空格的处理(过滤)
6、错误登录的次数限制
7、提交登录时,网络异常
8、多次点击提交操作,只能执行一次

后台服务器与系统已存在的用户信息做匹配校验!

登录密码【6-16,字母数字常用字符组合】(格式是否满足+满足格式是否与已存在信息一致)
lanxin12345 正确密码 lanxin1234

正交法和因果图分析法(这两种方法暂时不讲,很少用到,金融类可能后比较多,有了一定的经验后)

五、测试用例方法的选择
使用各种测试方法的综合策略

1)首先,进行等价类划分,主要是输入条件的划分,这是提高测试效率的最有效的方法,在任何情况下都必须使用边界值分析法,这种方法设计出的测试用例发现程序错误的能力最强。
切记不要穷举测试

2)用错误推测法追加测试用例,这需要测试工程师的经验总结

3)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度,如果没有达到覆盖标准,应当再补充足够的
测试用例(场景法)

具体如何设计,可以结合项目要求或自己的标准来做,灵活运用

笔试面试题整理
1、编写测试用例会用到什么方法
接着问,你觉得你在写用例的时候用到了吗?(结合项目来答)
2、给出一个登录/购物车/支付页面,直接让你设计尽可能多的用例

作业

输入边A、B、C三个值,判断是否构成三角形,如果是等腰三角形(直角、等边)就输出等腰(直角、等边)三角形

分析思路:
首先要考虑a、b、c是否为正数:a>0,b>0,c>0
三角形判断依据:三角形任意两边之和大于第三边 a<b+c;b<a+c;c<a+b
直角三角形判断依据:勾股定理:a的平方+b的平方=c的平方
等腰三角形判断依据:两边相等 a=b不等于c,a=c不等于b,b=c不等于a
等边三角形判断依据:三边相等:a=b=c

1、场景法:画出流程图,并整理测试点(等价类边界值进行用例补充)
2、等价类划分法,整理出测试点
二选一来完成
输入 有效等价类 无效等价类
是否为三角形的三条边 a>0 (1) a<=0 (7)
  b>0 (2) b<=0 (8)
  c>0 (3) c<=0 (9)
  a+b>c (4) a+b<=c (10)
  a+c>b (5) a+c<=b (11)
  b+c>a (6) b+c<=a (12)
     
是否为等腰三角形的三条边 a=b(13) a≠b且b≠c且a≠b(16)
  b=c(14)  
  a=c(15)  
     
     
     
     
是否为等边三角形的三条边 a=b=c(17) a≠b(18)
    a≠c(19)
    b≠c(20)
是否为直角三角形的三条边 a²+b²=c²(21) a²+b²≠c²(22)
     
a,b,c 覆盖等价类 输出
7,8,10 (1)(2)(3)(4)(5)(6) 一般三角形
0,3,2 (7) 非三角形
3,0,2 (8) 非三角形
1,2,0 (9) 非三角形
1,2,3 (10) 非三角形
1,3,2 (11) 非三角形
3,2,1 (12) 非三角形
3,3,7 (1)(2)(3)(4)(5)(6)(13) 等腰三角形
7,3,3 (1)(2)(3)(4)(5)(6)(14) 等腰三角形
3,7,3 (1)(2)(3)(4)(5)(6)(15) 等腰三角形
7,8,9 (1)(2)(3)(4)(5)(6)(16) 非等腰三角形
8,8,8 (1)(2)(3)(4)(5)(6)(17) 等边三角形
3,4,4 (1)(2)(3)(4)(5)(6)(18) 非等边三角形
3,4,4 (1)(2)(3)(4)(5)(6)(19) 非等边三角形
4,3,3 (1)(2)(3)(4)(5)(6)(20) 非等边三角形
3,4,5 (1)(2)(3)(4)(5)(6)(21) 直角三角形
3,4,6 (1)(2)(3)(4)(5)(6)(22) 非直角三角形

黑盒测试用例测试方法

黑盒测试用例测试方法



注意:没有办法证明测试点是否覆盖全面,要理解知识点,不要去背,理解了才是你的
按照方法去整理出来的测试点

下节课预习
软件测试知识分析






版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

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


相关推荐

  • redis 时间范围查询

    redis 时间范围查询这算是一种变相的在redis上面实现时间范围查询。我的使用场景介绍一下:redis在我们的项目里面是用来存储实体映射关系,比如user&gt;pc这种一度关联,会统计某一个用户在一段时间内总共有多少个关联关系;当前事件携带的关联关系是否是新的。…

    2022年6月18日
    25
  • 当前上下文不存在InitializeComponent()方法存根

    今天复制了别人的窗体设计,然后报错上下文不存在InitializeComponent()方法存根对于新手我的建议是,直接把窗体设计删了,重新设计, 可能会比较麻烦,但是新学者设计的界面不用太复杂。 …

    2022年4月14日
    76
  • boost::string or boost::regex

    boost::string or boost::regex

    2022年1月27日
    42
  • XRay安装使用以及Burp联动

    XRay安装使用以及Burp联动0x00前言XRay是长亭科技洞鉴核心引擎中提取出的社区版漏洞扫描神器,属于一款功能十分强大的国产被动扫描工具,其应用范围涵括,Web通用漏洞扫描、被动代理扫描、社区POC集成……XRay的定位是一款安全辅助评估工具,而不是攻击工具,其内置的所有payload和poc均为无害化检查。毫不犹豫的说,XRay属于渗透测试人员安全渗透的一大神兵利器!可以想象,当Burp与XRay联动时,必将碰撞出不一样的火花!0x01下载XRay…

    2022年5月7日
    493
  • C#的继承_继承关系中的被继承人

    C#的继承_继承关系中的被继承人继承详解:一.继承的概念:二.基类和派生类:三.继承的作用:四.继承的特点:五.举例说明:六.继承注意事项:一.继承的概念:继承:是面向对象程序设计中最重要的概念之一。继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易。同时也有利于重用代码和节省开发时间。当创建一个类时,不需要完全重新编写新的数据成员和成员函数,只需要设计一个新的类,继承了已有的类的成员即可。这个已有的类被称为的基类/父类,这个新的类被称为派生类/子类。二.基类和派生类:基类/父类:也可以理解成生活中的父亲

    2025年10月15日
    2
  • PHP蜘蛛爬虫开发文档

    PHP蜘蛛爬虫开发文档

    2021年11月4日
    48

发表回复

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

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