黑盒测试的7种测试方法

黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

黑盒测试有7种测试方法分别是等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、功能图法、正交实验法。下面将一一介绍。

等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。

1、划分等价类:

等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据。取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。

有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。

无效等价类:与有效等价类的定义恰巧相反。设计测试用例时,要同时考虑这两种等价类。因为,软件不仅要能接收合理的数据,也要能经受意外的考验。这样的测试才能确保软件具有更高的可靠性。

2、划分等价类的方法:

下面给出六条确定等价类的原则。

①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。

②在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。

③在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。

④在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。

⑤在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。

⑥在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。

3、设计测试用例:

在确立了等价类后,可建立等价类表,列出所有划分出的等价类:输入条件有效等价类无效等价类

4、设计原则:

然后从划分出的等价类中按以下三个原则设计测试用例:

①为每一个等价类规定一个唯一的编号。

②设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步。直到所有的有效等价类都被覆盖为止。

③设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。

边界值分析方法是对等价类划分方法的补充。

(1)边界值分析方法的考虑:

长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。

(2)基于边界值分析方法选择测试用例的原则:

1、如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。

2、如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。

3、根据规格说明的每个输出条件,使用前面的原则1。

4、根据规格说明的每个输出条件,应用前面的原则2。

5、如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。

6、如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。

7、分析规格说明,找出其它可能的边界条件。

基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。

错误推测方法的基本思想:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。例如,在单元测试时曾列出的许多在模块中常见的错误。以前产品测试中曾经发现的错误等,这些就是经验的总结。还有,输入数据和输出数据为0的情况。输入表格为空格或输入表格只有一行。这些都是容易发生错误的情况。可选择这些情况下的例子作为测试用例。

前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系,相互组合等。考虑输入条件之间的相互组合,可能会产生一些新的情况。但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。这就需要利用因果图(逻辑模型)。

因果图方法最终生成的就是判定表。它适合于检查程序输入条件的各种组合情况。

利用因果图生成测试用例的基本步骤:

(1)分析软件规格说明描述中,那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件),并给每个原因和结果赋予一个标识符。

(2)分析软件规格说明描述中的语义。找出原因与结果之间,原因与原因之间对应的关系。根据这些关系,画出因果图。

(3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。

(4)把因果图转换为判定表。

(5)把判定表的每一列拿出来作为依据,设计测试用例。从因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到最少,且测试用例数目随输入数据数目的增加而线性地增加。

1、条件桩:列出问题所有条件。通常认为列出的条件的次序不重要。

2、动作桩:列出问题规定可能采取的操作。这些操作的排列顺序没有约束。

3、条件项:列出针对它所列条件的取值,在所有可能的情况下的真假值。

4、动作项:列出针对它所列条件的取值,在所有可能情况下的真假值。

5、规则:任何一个条件组合的特定取值及其相应要执行的操作。在判定表中贯穿条件项和动作项的一列就是一条规则。显然,判定表中列出多少组条件取值,也就有多少条规则,条件项和动作项就有多少列。

判断表建立依据和步骤:

1、确定规则的个数。假如有N个条件,每个条件有两个取值(0、1),故2N种规则。

2、列出所有的条件桩和动作桩。

3、填入条件项。

4、填入动作项。制定初始判定表。

5、简化。合并相似规则或者相同动作。

适合使用规定判定表设计用例的条件:

1、规则说明以判定表的形式给出,或很容易转换成判定表。

2、条件的排序顺序不影响执行那些操作。

3、规则的排列顺序不影响执行那些操作。

4、当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。

5、如果某一规则要执行多个操作,这些操作的执行顺序无关紧要。

用功能图形象地表示程序的功能说明,机械的生成功能图的用例。功能图是一个黑盒、白盒混合用例设计方法。

功能图由状态迁移图和逻辑功能模型构成:

1、状态迁移图用于表示输入数据序列及其相应的输入数据。在状态迁移图中,有输入数据和当前状态决定输出数据和后续状态。

2、逻辑功能模型用于表示在状态中输入条件和输出条件之间的对应关系。逻辑功能模型只适合于描述静态说明,输出数据仅由输入数据决定。测试用例则由测试中经过的一系列状态和每个状态中必须依靠输入/输出数据满足的一对条件组成。

功能图方法中要用到逻辑覆盖和路径测试的概念和方法。要求设计人员对程序逻辑结构有清楚的了解。

生成用例:

1、生成局部测试用例:在每个状态中,从因果图生成局部测试用例。局部测试库有原因值(输入数据)组合与对应的结果值(输出数据或状态)构成。

2、测试路径生成:利用上面的规则生成从初始化状态到最后状态的测试路径。

3、测试用例合成:合成测试路径与功能图中每个状态的局部测试用例。结果是视状态到最后状态的一个状态序列,以及每个状态中输入数据与对应输出数据组合。

4、测试用例的合成算法:采用条件构造树。

从大量的实验数据中挑选适量的、有代表性的点,合理安排测试的设计方法。

1、提取功能说明,构造因子--状态表把影响实验指标的条件称为因子,而影响实验因子的条件叫因子的状态。利用正交实验设计方法来设计测试用例时,首先要根据被测试软件的规格说明书找出影响其功能实现的操作对象和外部因素,把他们当作因子;而把各个因子的取值当作状态。对软件需求规格说明中的功能要求进行划分,把整体的、概要性的功能要求进行层层分解与展开,分解成具体的有相对独立性的、基本的功能要求。这样就可以把被测试软件中所有的因子都确定下来,并为确定每个因子的权值提供参考的依据。确定因子与状态是设计测试用例的关键。因此要求尽可能全面的、正确的确定取值,以确保测试用例的设计作到完整与有效。

2、加权筛选,生成因素分析表对因子与状态的选择可按其重要程度分别加权。可根据各个因子及状态的作用大小、出现频率的大小以及测试的需要,确定权值的大小。

3、利用正交表构造测试数据集利用正交实验设计方法设计测试用例,比使用等价类划分、边界值分析、因果图等方法有以下优点:节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。

1、首先进行等价划分,包括输入、输出条件的等价划分,将无限测试变成有限测试。

2、使用边界值分析法。

3、使用错误推测发,追加一些用例。

4、对照程序逻辑,检查用例设计的逻辑覆盖,力求达到覆盖标准。

5、程序功能说明中有输入条件组合,就可选用因果图和判定表驱动法。

6、对于参数配置类软件,用正交试验法选择较少组合到达最佳效果。

7、功能图是用例设计的好方法,通过不同时期条件的有效性设计不同的测试数据。对应业务流程清晰的系统,用场景法贯穿测试过程,在案例中综合使用各种测试方法。

THE END
1.法律具有哪些作用这是指法作为一种社会规范具有判断、衡量他人行为是否合法或有效的作用。三、教育作用。这是指通过法的实施,法律规范对人们今后的行为发生直接或间接的诱导影响。四、预测作用。这是指人们可以根据法律规范的规定,事先估计到当事人双方将如何行为及行为的法律后果,从而对自己的行为作出合理的安排。五、强制作用。这是https://m.64365.com/tuwen/aaansyk/
2.简述法的功能。法的功能是指法对人们的行为、社会生活和社会关系发生的影响。法的功能为法所固有,不以时空条件为转移,具体而言,法的功能可分为以下几种: (1)法的指引功能,是指通过规定人们的权利和义务实现对主体行为的引导,包括个别性指引和规范性指引。 (2)法的评价功能,是指法律作为一种行为标准,可以被用来评判和衡量他人https://easylearn.baidu.com/edu-page/tiangong/questiondetail?id=1809171958273756513&fr=search
3.法律的意义和价值行业资讯教育作用:法律通过规定权利义务、制裁违法犯罪等方式,对人们进行教育引导,提高人们的法律意识和道德水平。 综上所述,法律的意义和价值在于维护社会秩序、保障个人自由、实现社会正义、提高效率以及平衡社会利益。同时,法律还通过其指引、评价、预测、强制和教育等价值功能,为社会的稳定和发展提供了有力的保障。http://www.anlihk.com/detail/id/103/
4.法的功能与作用十四.法的功能与法的作用前篇文章[返回目录]下篇文章它是法律对人的行为以及最终对社会关系所产生的影响,是国家权力运行和国家意志实现的具体表现,是社会经济状况的具体表现。……——《法理学》张文显主编,北京:法律出版社,1997年11月,第254页。法的作用对象有行为和社会两部分,基于上述分析,我们理解法的作用就要https://www.docin.com/touch/detail.do?id=1780510219
5.法的功能是什么昵称61440278 >《法》2018.12.25 关注 本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。打开APP,阅读全文并永久保存 查看更多类似文章 猜你喜欢 类似文章 04. 演奏法的功能 一根火柴就能测出肺功能好坏? 5种自行车减肥法 养生又减重 性功能低下秘方 天耳通 胎息法美嫩肌肤,功能https://www.360doc.cn/article/61440278_804327206.html
6.行为疗法笔记,第四天功能评估的方法可分为三类。 (1)间接评估法:通过晤谈和问卷搜集信息 (2)直接评估法:观察者及时记录前提、行为和后果。 (3)实验法:在控制条件下观察前提和后果的影响及作用。 1、间接评估法 间接评估法又称调查评估法。下面是对于该方法的几点说明。 https://www.jianshu.com/p/4dfc64a6a5ca?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
7.写毕业论文会用到的研究方法都有哪些?13、探索性研究法 探索性研究是一项高层次的科研活动.它利用已知的信息来探索和创造新的知识,并产生新颖独特的结果或产品。 14、信息研究方法 信息研究方法是利用信息研究系统功能的一种科学研究方法。根据信息论、系统论和控制论的原理,信息方法通过收集、传递、处理和整理信息来获取知识,并将其应用于实践,以达到新https://www.paperccb.com/14159.html
8.软件测试黑盒测试方法小结黑盒测试总结6.正交实验设计法 7.场景法 8.功能图法 1.等价类划分法 一个程序可以有多个输入,等价类划分就是将这些输入数据按照输入需求进行分类,将它们划分为若干个子集,这些子集即为等价类(某个输入域的子集合),在每个等价类中选择有代表性的数据设计测试用例。 https://blog.csdn.net/be_racle/article/details/126856909
9.第三节语法一、构形法 1.附加法: “嫩”:“有的形容词重叠后加“嫩”,相当于普通话的“的”或“地”。如:“他刚才还好嫩。“你慢慢嫩,走”。“嫩”字加在人称代词后表所属,相当于一个“的字短语”,如:“这只笔是你嫩,还是我 嫩? “头”:“头”字加在名词后表处所,纳雍方言读〔tou 55 〕,如:“田头〔https://www.gznayong.gov.cn/material/Upload/nyxz/nyxz200503.htm
10.宪法的功能和作用宪法作为国家根本法,首先具有确认功能。具体表现在:确认宪法赖以存在的经济基础,宪法的性质和内容取决于经济基础的性质;确认国家权力的归属,使统治阶级的统治地位得到合法化;确认国家法制统一的原则,为法律体系的有机统一和协调发展提供统一的基础;确认社会共同体的基本价值目标与原则,为社会共同体的发展提供统一的价值体http://www.110.com/ziliao/article-600156.html
11.高校学报及社科类综合刊2022年第3期法学要目汇编国际法法学要目内容提要:关于1949年9月召开的中国人民政治协商会议第一届全体会议的性质、功能和议程,学界已有探讨,但至今没有形成共识。中国人民政治协商会议第一届全体会议兼有统一战线组织和制宪会议的双重性质,这主要是由该会议通过的《中国人民政治协商会议共同纲领》《中国人民政治协商会议组织法》和《中央人民政府组织法》三份https://3g.163.com/dy/article/HC66SISN0530W1MT.html