浅析软件黑盒测试

2018-03-21 00:47
数字通信世界 2018年5期
关键词:黑盒软件测试子集

钟 睿

(广州大学,广州 510000)

1 黑盒测试定义

黑盒测试是目前软件测试的重要方法之一,其特点在于不用考虑软件的逻辑和结构,根据软件的需求分析,对软件进行功能性的测试,根据一个输入和相应的输出,判断软件能否正常使用。黑盒测试主要涉及软件界面和功能。软件测试者往往不用了解软件的内部具体代码,只要考虑输入的正确性、合法性、规范性中判断输出的结果与预期是否一致。由于黑盒测试不需要测试者了解软件的代码编程,只需要确定软件的功能是否完备,是目前软件中常用的一种软件测试方法。

2 黑盒测试的作用

黑盒测试主要针对软件功能性的测试,主要完成:软件功能性是否完整,软件系统能否正常显示,软件系统的性能测试,系统的完备化、数据初始化以及软件系统的中断错误、系统停顿等。

3 黑盒测试的常用方法

软件黑盒测试的主要方法包括分析边界法、划分等价类法、和因果图示法和推测错误法。

3.1 分析边界法

分析边界法主要是针对软件边界值进行测试分析的一种黑盒测试法。在软件测试的工作中表明,与没有进行分析边界法测试的软件系统相比,进行分析边界法测试的软件系统往往拥有更好的系统稳定性,系统不易崩溃。这里的边界主要是指测试的数据靠近数据边缘或者是正好处于边缘状态,在分析边界时,通常遵守以下的测试原则:

(1)输入数据规定了范围,对于范围边界设计有效等价类用例,刚越界的设计无效等价类用例。

(2)系统中用了内部数据结构的情况下要设计内部数据结构的用例。

3.2 划分等价类法

划分等价类法的主要思想是软件系统的相关数据分成多个部分,也就是把软件数据划分为多个子集,然后在这多个数据子集中选取一定具有代表性的少量数据进行测试,在这过程中,这些少量的测试数据就代表着该集的数据,这就省去将软件的所有数据进行测试。在进行划分等价类法时,如何进行等价划分是测试中较为重要的部分。

3.2.1 等价类划分

等价类主要是依据输入的数据进行划分,等价类也就是相应输入的子集。在这个子集之中,输入和输出的数据,特别是在错误逻辑方面是基本类似或者是相同的。在这样的情况下,我们假设所选取的数据具有较高的代表性。我们在软件黑盒测试时首先要根据具体的功能把所有的相关数据进行划分,划分成的子集也就是等价类,在等价类中所选择的数据可以代表这个子集。等价类可以分为有效类和无效类两类。有效等价类主要是指软件测试所选择的数据集合是合情合理的,是在一定的范围内来进行软件性能和功能性的测试。而无效等价类的所选取的数据是不合理的,是指意外性的数据,往往用来测试软件的边缘性。我们在实际的软件测试中,需要兼顾有效等价类和无效等价类,从而保证软件的完备性以及系统的合理性。

3.2.2 等价类划分类的设计原则

在确定软件测试的等价类后,需要根据所有的有效等价类和无效等价类进行合理的设计。最基本的设计原则是要保证所有的有效等价类和无效等价类都涉及到,不能有遗漏,只有这样才能满足设计的需求,同时需要将所有的有效等价类和无效等价类进行编号,便于后面的进一步测试。

3.3 推测错误法

推测错误法也是常用的一种黑盒测试方法,其主要根据测试者以往的经验来设计出软件中可能会存在的不足之处,同时还要设计出修正这些错误的测试用例。测试者根据软件的主要特点设计出软件可能的特殊情景和出现的错误。一般来说,经验丰富的软件测试者通过本方法进行测试时往往更加快速,他们通常更加知晓软件系统可能存在的薄弱之处,并且根据这些薄弱点设计出合适的测试用例。

但是需要说明的是,经验丰富的人也不可能把软件系统中所有的错误都快速的找到,只是说尽可能的降低,通过本方法也不可能做到万无一失,只能在测试的实际工作中不断积累经验,增强自身的洞察力。此外,这种方法对来新手来说,具有一定的难度,门槛较高。

4 测试方法分析结论

对于软件系统的测试而言,黑盒测试是十分重要的。在进行黑盒测试之前,需要做大量的工作,主要包括数据的准备以及相关的设计工作,以此来保证测试数据的完备性和准确性。同时,黑盒测试还需要综合考虑多方面的因素,根据实际的需求以及应用场景的不同进行有针对性的测试,只有这种才能达到软件测试的目的,需要在工作中不断积累经验。

[1] 张策,崔刚,刘宏伟等.软件测试资源与成本管控和最优发布策略[J].哈尔滨工业大学学报,2014,46(5):51-58.

[2] 赵玮.基于黑盒测试的软件测试策略研究与实践[J].中小企业管理与科技(上旬刊),2017(1):144-145.

[3] 张敏,赵平,张蓉.黑盒测试技术在指控分系统软件测试中的应用[J].强激光与粒子束,2013,25(s1):87-90.

[4] 满薇薇.黑盒测试技术在指控分系统软件测试中的应用研究[J].电子世界,2014(10):203-204.

[5] 林永峰,陈亮.面向安全性分析的嵌入式软件测试方法研究[J].现代电子技术,2016,v.39;No.468(13):80-83.

[6] 张妍,傅秀芬.基于多优化目标的软件测试用例约简方法研究[J].计算机应用研究,2016,33(4):1111-1113.

猜你喜欢
黑盒软件测试子集
一种基于局部平均有限差分的黑盒对抗攻击方法
拓扑空间中紧致子集的性质研究
连通子集性质的推广与等价刻画
基于OBE的软件测试课程教学改革探索
航天软件测试模型构建与应用
关于奇数阶二元子集的分离序列
EXCEL和VBA实现软件测试记录管理
软件测试工程化模型及应用研究
每一次爱情都只是爱情的子集