APP下载

基于黑盒测试的软件测试策略研究与实践

2017-01-06赵玮

关键词:软件测试

赵玮

摘 要:随着科学技术的发展,计算机的运用也越来越普及,计算机运用中最为重要的就是软件的开发。为了满足人们生活和工作的需要,各种类型的软件不断被开发出来,这些软件是否适合人们使用,需要专业权威的检测过程来进行评测。因此,黑河测试技术已经得到广泛应用,软件测试的重要性也日益凸显出来,受到人们的重视。黑盒测试方法作为软件测试中的重要测试方法,在软件测试中发挥着重要的作用,利用黑盒测试方法研究软件测试中的问题,提出有效的测试策略,能够为软件测试提供有力的技术支持,具有重要的理论价值和实践意义。

关键词:黑盒测试;软件测试;策略研究与实践

中图分类号: TP311.5            文献标识码: A            文章编号: 1673-1069(2017)01-144-2

1  概述

随着人们对计算机应用的越来越普遍,人们对软件质量的要求也在不断地提高。软件测试是在规定的条件下对程序进行操作,发现软件缺陷,评价软件质量,进而提高软件质量的一个过程,它的实践需要制定一定的策略,选择合适的测试策略,能让测试工作事半功倍。本文就黑盒测试方法研究软件测试策略,分析实践中存在的各种问题,为软件测试提供有力的技术支持。目前常用的比较成熟的黑盒测试的方法主要有:等价类划分法、边界值分析法、因果图法和错误推测法。下面对这几种方法加以介绍并指出其优缺点。

2  传统软件测试方法的局限性

在系统和验收测试过程中,被测对象都是功能已经实现,即将交付和发布的软件,所以一般都是通过黑盒测试方法来对软件进行功能测试、性能测试、接口测试以及其他类型的测试。黑盒测试中的一些方法如等价类划分法、错误推测法和边界值分析法都可以取得非常好的效果。但是由于黑盒测试的局限性,它不能遍历所有的输入和输出,不能直接对特定程序段进行测试,有可能遗漏错误。如果在测试用例设计之前, 未采用宏观测试策略进行规划,测试就会陷入一个死区,局限在细节中,导致测试用例分布不均匀,遗漏较多的重要信息,黑盒测试方法就无法发挥其优势。

在软件测试中,已经形成了很多模型,各种模型的实施都要通过具体的测试用例来实现。本文在指导测试用例的宏观设计和实施方法上提出了一些比较实用性的测试策略,以此来提高整个测试工作的效率。

3  软件测试策略分析

软件测试策略包括测试观点、测试方法、测试用例和测试工具等多方面内容,这些因素在一定程度上影响着测试结果和测试进度。对这些因素的研究和改进措施的提出可以有效地提高测试结果的有效性,具体体现在以下几个方面:通过对测试用例的预期分布进行合理的分析,可以提高测试的准确性;从多样化的角度设计测试用例,可以从多个方面发现系统中存在的缺陷;通过对测试人员进行合理分配,可以最大限度地提高测试效率。

3.1 矩形分布的测试策略

一个软件的测试用例集是无限的,所以只能根据某些原则来选择具有代表性的用例来进行测试。针对大型软件,可能需要使用数以万计的测试用例来进行充分测试,人力成本和时间成本的投入都较大,因此,如何选取有效的测试策略来提高测试效果是需要重视的问题。

软件规模越小,复杂性越低,关联的因素也会越小,反之,软件规模越大,关联因素越多,但是软件规模和测试用例的数量从理论上来看,并不具有线性关系。然而在实际工作中,为了方便操作,会对此进行简化,将软件规模和测试用例数量之间的关系视为线性关系。

通过矩形式的预测法进行分析,可以帮助我们把握好测试用例数量的合理分布。在大型的软件测试中有些功能点看似是测试过的,但仍然存在遗漏问题,如果采用矩形法,就可以保证每个有交叉的功能点都被测试,从而减少遗漏测试现象的发生。

3.2 不同角度的测试策略

同一个问题从不同的角度进行分析会得出不同的结论。对于同一个软件,从不同的角度进行测试,得出的测试结果也会不同,有些测试结果可能会重叠,但是也有些独有的测试结果是采用某种特定的测试策略才能得出的,所以如果能够从不同的角度入手,可以更好地覆盖软件,得出更全面的测试结果。

主要的测试手段如场景测试,就是假设自己是被测软件的使用者,但是在实际的情况中,用户会以不同的顺序去使用软件,需要将这些可能性都列举出来总结成为测试观点。场景测试中的基于序列的测试和普通的功能测试是有区别的,它的侧重方向是连续使用整个软件的各个功能。但是功能测试则是针对每个功能点进行细致全面的测试,所以这种测试可以发现很多普通功能测试中难以发现的缺陷。

3.3 测试人员的分配策略

在测试方法能够满足要求之后,需要对测试人员的分配采取合适的策略。虽然一个好的测试用例由每个测试人员来执行,结果应该是相同的,但是由于个体差异,实际的测试结果会有一定的差异,所以缺陷更容易在自由测试中发现。由此可知,如果能够对测试人员进行更为合理的布局,可以有效地提高测试的质量。

4  软件测试策略应用实例分析

策略研究的目的是为了能够在实际应用中发挥作用,在对软件测试策略研究之后,各种策略需要在实践中加以运用才能发挥其价值,最终取得好的测试效果,提高软件评估的质量。

4.1 测试用例分布策略实例

矩形分布策略顾名思义就是采用矩阵分布的方式进行分析,首先需要明确矩阵的行和列,针对具体的测试内容,根据所运用的实例将实际测试内容填进分布矩阵中。分布矩阵中的行和列都需要根据实际的软件进行衡量和裁剪,防止重复状况的出现。根据每个行和列的交叉点分析计算软件中的每个功能在实际运用中的情况。针对被测软件的特点和要求,运用分布策略的方法对软件实行检测,对检测出的软件中存在的问题进行分析,能使检测的每个环节都具有针对性,而且操作起来比较方便,检测的结果可以帮助软件开发人员分析软件缺陷,更好地修改软件缺陷。

4.2 不同角度测试策略实例

运用不同角度的测试策略分析软件,会得出不同的问题点,针对这些问题点进行进一步的分析和测试,能够使软件开发者更清楚地了解出现这些问题的原因,以便在后期的软件开发中有效地避免同类问题的出现,提高软件的质量。

不同角度测试的策略非常适用于大型软件,针对那些功能强大,同时各部分功能之间存在着相互联系的软件,一些测试方法不能够对其进行全面的测试,这是因为软件功能之间的联系很有可能会使测试过程中产生一些遗漏,而采用这种不同角度的测试策略能够有效地避免这种情况的出现,使得软件测试结果更加准确。

4.3 测试人员分布策略的实例

在软件测试方面,测试人员的知识技能并不完全相同,通常每个测试人员都有各自擅长的领域,当自己检测完成之后就认为软件的该部分功能测试通过,针对这种现象,可以实行测试人员的交叉分布策略。在对软件检测时,测试人员在测试完自己负责的功能模块后,交叉检验其他测试人员负责的测试模块,这样既可以使得每个测试人员在工作中都有新的体验,也帮助他们提高了工作的积极性,学到了新的测试知识和实践技能。通过人员分布策略在实际中的运用,使得他们在检测软件时发现的问题更多。这个分布策略在测试人员身上的运用极大地发挥了测试人员的积极性,同时也提高了评测质量。

5  结束语

通过上述的研究讨论,我们看到了软件测试在软件研发中的重要性,同时我们也了解了软件的测试策略对测试结果的影响,在黑盒测试方法的基础上配以合适的测试策略能够为软件的测试过程带来便捷。软件测试策略的研究是时代发展的必然过程,软件测试策略的研究也是一个复杂的过程,需要不断的对比和改进。人们对计算机应用的依赖使得对软件品质的要求不断地提高,基于黑盒测试的软件测试策略的研究能够为今后的软件测试提供有力的技术支持,使得软件的质量不断的提升,用户的使用体验也不断提高。

参 考 文 献

[1] PATTON  R.软件测试[M].北京:机械工业出版社,2014.

[2] 张海番.软件工程导论[M].3版.北京:清华大学出版社,2013.

[3] 董晓霞.相邻因素组合测试用例集的最优生成方法[J].计算机学报,2013,30(2):200-210.

[4] 杨玲萍,韩阳.基于功能点分析测试设计充分性模糊评判建模[J].计算机工程与应用,2012,43(3):106-111.

[5] 张永强,陈永革,姚立新.军用软件的测试与实践方法[J].火力与指挥控制,2013,31(9):91-93.

猜你喜欢

软件测试
软件测试方向人才培养“1+X”融合研究
大数据背景下软件测试技术的发展
软件测试课程教学改革探讨
关于 Web 应用系统的软件测试的研究
核心概念与案例驱动的软件测试课程教学研究
军用软件测试项目管理系统设计与实现
智能手机菜谱软件的设计
软件测试发展现状及前景的探讨