黑盒测试技术及其应用研究

发表时间:2020/10/10   来源:《工程管理前沿》2020年第18期   作者:张川
[导读] 本文在对黑盒测试技术全面概述的基础之上,对黑盒技术在手机短信测试中的应用进行具体分析。
          
         张川
         杭州三汇数字信息技术有限公司天津分公司   300384
         摘要:本文在对黑盒测试技术全面概述的基础之上,对黑盒技术在手机短信测试中的应用进行具体分析。
         关键字:黑盒;测试;短信
         随着软件在人们日常生活中的应用越来越广泛,软件质量也日益受到人们的重视。软件测试是保证软件质量必不可少的重要手段,测试工程师需要从项目生命周期之初就开始介入,这样他们才能准确地理解测试的对象并且和其他涉众一起生成可测试的需求。在软件生命周期的每一阶段中都应包含测试,进而检验各阶段的成果和预期目标的一致程度,尽可能早的发现缺陷并加以修正。如果不能在软件开发的早期阶段进行相应的测试,缺陷的延时扩散常常会给最后的成品测试带来巨大的灾难。虽然测试工作不可能发现所有的缺陷,但是我们必须设计出最可能发现最多数量的错误、并耗费最少时间和最小代价的测试。
         1黑盒测试简介
         黑盒测试注重于测试软件的功能性需求,根据软件规格说明书的要求,运行并验证程序是否满足用户的需求,是一种从用户立场出发的测试。它把被测试程序当作一个黑盒子,不考虑其内部的逻辑结构,通过输入测试数据,根据需求来判断输出是否正确,确认软件功能的正确性和可操作性。根据软件的特定功能构造测试,以证实各功能完全可执行,同时在各功能中寻找缺陷。在进行测试用例设计时,应考虑两个方面:一是覆盖率最大化,所设计的测试用例能够减少达到合理测试所需的附加测试用例数;另一方面,所设计的测试用例能够告知是否存在某些类型缺陷,而不是仅仅与特定测试相关的某个缺陷。众所周知,穷举测试是不可能的,测试工程师总是试图通过有限的测试用例最大限度的提高发现缺陷的数量,以取得最好的测试效果。
         2黑盒测试方法介绍
         2.1等价类划分法
         等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据划分为若干个等价类。然后从每个部分中选取具有代表性的数据当做测试用例。测试用例由有效等价类和无效等价类的代表数据组成,从而保证测试用例具有完整性和代表性。
         2.2边界值分析法
         边界值分析法是对程序输入或输出的边界值进行测试的一种黑盒测试方法。实际的测试工作证明,考虑了边界条件的测试用例比那些没有考虑边界条件的测试用例具有更高的测试回报率。这里所说的边界条件,是指输入和输入等价类中那些恰好处于边界、或超过边界、或在边界以下的状态。
         2.3因果图法
         因果图法也是较常用的一种黑盒测试方法,是一种简化了的逻辑图。因果图能直观地表明输入条件和输出动作之间的因果关系,能帮助测试人员把注意力集中到与程序功能有关的输入组合上。因果图法是一种适合于描述对于多种输入条件组合的测试方法,根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。
         2.4错误推测法
         错误推测法是基于以往的经验和直觉,参照以往的软件系统出现的错误,推测当前被测程序中可能存在的缺陷和错误,有针对性地设计测试用例。用错误推测法设计测试用例的基本思想是:列举出程序中可能犯出现的错误或容易发生错误的特殊情况的清单,然后根据清单和已经设计好的测试用例来编写特定的测试用例。例如,程序中出现的输入数据为“0”或者字符为空就是一种错误易发情况;在出现输入或输出的数量不定的地方,数量为“没有”和“一个”也是错误易发情况。特别需要注意的是,在阅读规格说明时联系程序员可能做的假设来确定测试用例,测试人员要站在用户的角度来考虑输入信息,而不必去管这些信息对于被测程序是合理还是不合理的输入。
         3黑盒测试方法的比较
         3.1等价类划分法
         核心:“分类”及代表值。
         优点:通过把输入数据和输出数据进行分类,选用分类中的代表值, 在保证了测试覆盖的情况下大大减少了测试用例的数量,使测试工作变得简单高效。
         缺陷:若无清晰的需求分类,可能造成覆盖泄露。
         3.2边界值分析法
         核心:边界值和边界两边的邻值。


         优点:大量的程序错误往往发现在输入的边界上,考虑了边界值的测试用例能更高效的发现程序中的错误和缺陷。
         缺陷:此方法的目的性过强,导致其注定只能完成测试的一部分,单独使用时,整体覆盖率得不到保证。
         3.3因果图法
         核心:测试元素逻辑关系图,即因果图。
         优点:该方法擅于处理逻辑事务的测试目标,协助用例设计人员搭建用例整体框架,实现从上至下的用例设计理念。
         缺陷:适用范围有限制,需结合其他方法才能得到最终用例。
         3.4错误推测法
         核心:测试人员的经验和敏锐性。
         优点:测验人员依据自己已有的测试经验,针对现在被测软件,设计有针对性的测试用例,能够发现系统隐蔽的不易被发现的潜在错误和缺陷。
         缺陷: 该方法依赖于测试人员的测试经验和测试的敏锐嗅觉,没有通用的可以遵循的规则。
         4测试用例应用举例
         下面以一个手机通话模块中呼叫功能为被测对象,应用黑盒测试技术进行测试用例设计。
         4.1基本信息
         手机品牌:华为、手机制式(GSM/CDMA):GSM、购买时间:2019年7月、运营商:联通
         4.2测试项目:呼叫
         测试子项:呼出一个号码可采取的方式有哪些(例如直接输入后按呼叫键、查询到电话本后按呼叫键、从短消息中提取号码呼叫等等)。
         测试设计规格说明标识符:101;待测特征:呼出一个号码可采取的方式有哪些(例如直接输入后按呼叫键、查询到电话本后按呼叫键、从短信中提取号码呼叫等等);方法细化:直接测试;测试标识:TC0132-TC0134;测试标识特征通过/失败准则:呼叫成功=True,呼叫失败=False。
         设计思路:可直接对直接输入后按呼叫键、查询到电话本后按呼叫键、从短消息中提取号码呼叫3项进行确认测试。
         4.3具体测试用例设计
测试子项    测试用例    特征附注    输入    预期结果    输出结果
呼出一个号码可采取的方式    TC0132    直接输入后按呼叫键    无    T    T
    TC0133    查询到电话本后按呼叫键    无    T    T
    TC0134    从短信中提取号码呼叫    无    T    T
         4.4测试结果
         在手机软件测试中,合理而有效的设计测试用例,可以大大提高手机软件测试的效率以及测试特征点的覆盖度。随着软件测试技术越来越成熟,如何更好的将现有的各种测试技术进一步应用到手机软件测试中,提高手机软件的可靠性和易用性,还将是我们今后研究的方向。
         5结论
         软件黑盒测试用例设计方法有很多种,针对某个具体的功能点,使用单一的设计方法往往无法覆盖到所有类型的缺陷。因此在实际测试工作中需要综合使用多种测试方法,形成测试策略,这样对一个功能点的测试才能比较充分。
         参考文献
         [1]古乐.软件测试技术概论[M].清华大学出版社,2019.
         [2]许育诚.软件测试与质量管理[M].电子工业出版社,2019.
         [3]王晖.面向对象软件分析设计与测试[M].科学出版社,2018.
投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: