A. 主要的黑盒测试用例设计方法有哪些
常用的四种黑盒测试用例设计方法
1.
等价划分。所谓等价类划分是指一套被选择的值,这些值分别代表了许多众多
的可能输入值,程序对其处理的方式都是一样的。等价类划分的方法作为继边
界值分析方法之后补充的测试用例设计试用的一种方法。划分等价类、确定测
试用例。
等价类划分是一种典型的黑盒测试方法,使用这一方法时,完全不考虑程序的
内部结构,只依据程序的规格说明来设计测试用例。等价类划分方法把所有可
能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数
有代表性的数据做为测试用例。
等价类的划分有两种不同的情况:有效等价类:是指对于程序的规格说明来说,
是合理的,有意义的输入数据构成的集合。无效等价类:是指对于程序的规格
说明来说,是不合理的,无意义的输入数据构成的集合。在设计测试用例时,
要同时考虑有效等价类和无效等价类的设计。
2.
边界值分析。在设计测试用例确定输入和输出参数时,大多数情况下都是用边
界值分析方法,采用边界值分析设计的测试用例发现程序错误能力最强。边界
值分析也是一种黑盒测试方法,是对等价类划分方法的补充。人们从长期的测
试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输
入范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。
3.
错误推测法。人们也可以靠经验和直觉推测程序中可能存在的各种错误,从而
有针对性地编写检查这些错误的例子。这就是错误推测法。错误推测法的基本
想法是:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据它
们选择测试用例。
4.
因果图。如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选
用因果图法。如果在测试时必须考虑输入条件的各种组合,可使用一种适合于
描述对于多种条件的组合,相应产生多个动作的形式来设计测试用例,这就需
要利用因果图。因果图方法最终生成的就是判定表。它适合于检查程序输入条
件的各种组合情况。
B. 黑盒测试的方法有哪些
一、边界值测试
经实践总结:大量的软件缺陷发生在输入域和输出域的边界上。所以在设计测试用例的时候,应该重视边界。
例如只有一个输入条件时,可以这么选取测试用例。(以坐标轴举例。以红点表示测试用例)例如当有两个输入条件的时候,可以这么选取测试用例。(以红点表示测试用例)
ps:要测试健壮性(软件有没有金刚不坏之身)的时候,可以这么设计测试用例。
选取略小于最小值的无效测试数据(或者略大于最大值的无效测试数据)。
二、等价类划分
要做到穷尽测试是不可能的,所以在设计测试用例时往往要先划分等价类再选取“人大代表”。
划分的子集应该满足如下因素:
(1)每个子集内部所有的数据都是等价的
(2)子集之间互不相交
(3)所有子集的并集是整个输入域或输出域
PS:
(1)【有效等价类】是相对于规格说明合理的、正确的、有意义的输入数据构成的集合。
(2)【无效等价类】是相对于规格说明不合理的、错误的、无意义的输入数据构成的集合。
小二啊,上一个例子:
如网站注册用户名的时候,输入框要求“用户名由字母开头,后跟字母或数字的任意组合,且长度<=8”。
(1)有效的等价类划分
username = {0<全字母的长度<8}
username = {0<(字母开头+数字)的长度<8}
(2)无效的等价类划分
username = {0<全数字的长度<8}
username = {0<(数字开头+字母)的长度<8}
username = {全字母的长度>8}
username = {全数字的长度>8}
username = {(数字开头+字母)的长度>8}
username = {0<(字母开头+数字)的长度>8}
三、因果图
“因为他们有丰富的经验,不但懂得现状,而且明白因果。”
基于因果图的测试方法要考虑如下问题
(1)规格说明书有哪些原因?
(2)规格说明书有哪些结果?
(3)规格说明书中各种原因之间的关系怎么样?
(4)规格说明书中各种结果之间的关系怎么样?
(5)规格说明书中原因和结果之间的约束条件怎么样?
(6)如何从规格说明书中的原因和结果设计测试用例?
【a】恒等: 若c1为1,则e1也为1。若c1为0,则e1也为0;
【b】非: 若c1是1,则e1是0.若c1为0,则e1是1;
【c】或: 若c1与c2中有一个是1或者两个都为1,则e1是1。若c1和c2都为0,则e1是0;
【d】与: 当且仅当c1和c2都是1,则e1为1,否则e1为0.
C. 黑盒测试的方法有哪些定义分别是什么
具体的黑盒测试方法包括等价类划分、因果图、正交实验设计法、边值分析、判定表驱动法、功能测试等。
等价类划分
等价类划分是一种典型的黑盒测试方法,用这一方法设计测试用例可以不用考虑程序的内部结构,只以对程序的要求和说明,即需求规格说明书为依据,仔细分析和推敲说明书的各项需求,特别是功能需求,把说明中对输入的要求和输出的要求区别开来并加以分解。
边界值分析
软件测试常用的一个方法是把测试工作按同样的形式划分。对数据进行软件测试,就是检查用户输入的信息、返回结果以及中间计算结果是否正确。边界值分析(Boundary
Value
Analysis,BVA)是一种补充等价划分的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例。
错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误,
从而有针对性的设计测试用例的方法.
错误推测方法的基本思想:
列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例.
例如,
在单元测试时曾列出的许多在模块中常见的错误.
以前产品测试中曾经发现的错误等,
这些就是经验的总结.
还有,
输入数据和输出数据为0的情况.
输入表格为空格或输入表格只有一行.
这些都是容易发生错误的情况.
可选择这些情况下的例子作为测试用例.
考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例.
这就需要利用因果图(逻辑模型).
因果图方法最终生成的就是判定表.
它适合于检查程序输入条件的各种组合情况.
就是使用已经造好了的正交表格来安排试验并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率
D. 黑盒测试方法有哪些
目录
一分钟了解黑盒测试10.7万 49"
黑盒测试
黑盒测试法一般指本词条
科普中国 | 本词条由“科普中国”科学网络词条编写与应用工作项目审核
审阅专家孙锐
黑盒测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。[1]
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。[1]
中文名
黑盒测试
外文名
Black Box Testing
别名
功能测试
测试角度
用户
应用领域
计算机
快速
导航
作用 主要内容 测试方法 流程 优缺点
简介
黑盒测试又叫功能测试、数据驱动测试或基于需求规格说明书的功能测试。该类测试注重于测试软件的功能性需求。[2]
采用这种测试方法,测试工程师把测试对象看作一个黑盒子,完全不考虑程序内部的逻辑结构和内部特性,只依据程序的《需求规格说明书》,检查程序的功能是否符合它的功能说明。测试工程师无需了解程序代码的内部构造,完全模拟软件产品的最终用户使用该软件,检查软件产品是否达到了用户的需求。黑盒测试方法能更好、更真实地从用户角度来考察被测系统的功能性需求实现情况。在软件测试的各个阶段,如单元测试、集成测试、系统测试及验收测试等阶段中,黑盒测试都发挥着重要作用,尤其在系统测试和确认测试中,其作用是其他测试方法无法取代的。[2]
作用
黑盒测试方法着重测试软件的功能需求,是在程序接口上进行的测试,主要是为了发现以下错误。[1]
(1)是否有功能错误,是否有功能遗漏。[1]
(2)是否能够正确地接收输入数据并产生正确的输出结果。[1]
(3)是否有数据结构错误或外部信息访问错误。[1]
(4)是否有程序初始化和终止方面的错误。[1]
主要内容
(1)接受性测试。
黑盒测试是从软件的接口接受测试输出结果,具有接受性测试的特点。[3]
(2)α/β测试。
测试是项目组内的成员对被测软件进行的测试,α/β测试是由项目组外的人员参加的测试。α/β测试也适合于黑盒测试。也就是说,当测试发现错误后在开发人员修改的同时,项目经理也会对产品计划做出相应的调整,产品特征不断地被修改。[3]
(3)菜单/帮助测试。
在软件测试过程中,开发人员将修复测试人员发现的错误,而且对软件的有些功能进行修改,同时项目经理也将根据情况调整软件的特性,因而在软件开发和测试的过程中,所有的功能都可以进行调整。因此,在软件产品开发的最后阶段,文档里发现的问题往往最多。[3]
(4)发行测试。
在正式发行前,产品要经过非常仔细的测试。除了专门的测试人员外,还需要几千个甚至几十万其他用户与合作者通过使用来对产品进行测试。然后将错误信息反馈到技术部门到了发行测试时,如果出现非改不可的错误,就必须推迟软件的发行,在推迟时间内需要重新对软件产品进行全面的测试,将耗费大量的时间、人力和物力。[3]
(5)回归测试。
在此阶段,首先要检查以前找到的错误是否已经更正了。回归测试可使已更正的错误不再重现,并且不会产生新的错误。[3]
(6)RTM测试。
RTM测试是指在产品发行阶段所进行的测试。在这一测试阶段,每一个错误都需要经过高端人员同意才能更正。因为这时候修改软件非常容易产生其他的错误,所以只有那种非修复不可的错误才将允许进行修改。如果在发行阶段软件还有许多严重错误的话,就不能按时发布。[3]
测试方法
从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景法等。[2]
等价类划分的办法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。该方法是一种重要的,常用的黑盒测试用例设计方法。[2]
黑盒测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。[1]
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的
E. 用于App测试的黑盒测试用例设计方法有哪些
黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。
等价类划分的办法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。该方法是一种重要的,常用的黑盒测试用例设计方法。
边界值分析是通过选择等价类边界的测试用例。边界值分析法不仅重视输入条件边界,而且也必须考虑输出域边界。它是对等价类划分方法的补充。大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误
错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法。列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。
因果图法,考虑输入条件之间的相互组合,可能会产生一些新的情况. 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多. 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例. 这就需要利用因果图。
判定表是分析和表达多逻辑条件下执行不同操作的情况下的工具.在程序设计发展的初期,判定表就已被当作编写程序的辅助工具了.由于它可以把复杂的逻辑关系和多种条件组合的情况表达得既具体又明确。
正交试验设计法,就是使用已经造好了的正交表格来安排试验并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率
TestBird- 手游和App自动化测试平台
F. 黑盒测试的测试用例设计方法有哪些
1、等价类划分法:有效等价 无效等价
2、边界值分拆分
3、错误推测法
4、场景法
5、因果图判定法
6、正交表法
G. 黑盒测试的方法有哪些
“黑盒”的两种基本方法 黑盒测试有两种基本方法,即通过测试和失败测试。 在进行通过测试时,实际上是确认软件能做什么,而不会去考验其能力如何。软件
H. 黑盒测试的主要设计用例方法有哪些
1.等价类划分 如下图所示
2. 边界值:应选取正好等于、刚刚大于、刚刚小于边界值作为测试数据
3. 错误推测法:进行错误的操作,验证程序是否对出错的场景和情况有应对能力。
4. 因果图法/判定表法:适合于检查程序输入条件的各种组合情况。
5. 场景法:场景描述的业务流程
基本流:主要是功能的正常操作流程
分支流:需要程序做非法判断处理
I. 测试用例的设计方法有哪些
黑盒:等价类划分法,边界值法 ,因果图法,场景法,错误推断法 白盒:基本路径覆盖法,条件覆盖法,语句覆盖法,判定覆盖法
J. 黑盒测试方法有哪些
黑盒测试被称为 功能测试或数据测试,在测试时,将被测软件视为一个不能打开的盒子,在完全不考虑程序内部结构和内部特性的情况下来进行测试,采用·黑盒测试的主要目的是在已有软件产品所应具有的功能等基础上进行下列操作:
1、检查程序功能是否按照需求规格说明书的要求正常使用,测试每个功能是否有遗漏,测试性能特性是否满足要求。
2、测试人机交互是否错误,检测数据结构或外部数据库访问是否错误,程序是否能适当的输入数据而产生正确的输出结果,保持外部信息(如数据库或文件)的完整性。、
3、检测程序初始化和终止方面的错误。