欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 计算机应用 > 浅谈白盒测试与黑盒测试在软件测试中的应用

浅谈白盒测试与黑盒测试在软件测试中的应用

日期:2023-01-24 阅读量:0 所属栏目:计算机应用


摘 要:黑盒测试着眼于整体,不考虑软件局部的功能与结构,仅依照软件的需求规格说明书,检查程序的功能是否符合需求说明书的要求;而白盒测试着眼于软件局部,检验软件的模块、细节及实现过程。

关键词:白盒测试;黑盒测试;软件测试
  伴随着软件业的发展壮大,人们对于软件功能的要求也随之提高。我国的软件企业也逐渐认识到软件测试的重大意义,在软件开发过程中也越来越重视软件测试这一工作。
  软件测试并不是说软件开发完成后对其进行简单的“找错”,而应当贯穿于软件开发的全过程,对其进行科学、严格的质量控制。软件测试的方法可分为白盒测试和黑盒测试两种,对于任何软件工程产品,都可以从这两种方法中选择一种来进行测试。
  一、测试的定义与分类
  我们应当首先认识测试的含义,顾名思义,即找出错误,具体来说就是采用人工或者自动的方法测试某个系统(包括软件经过建模、需求、设计等阶段所产生的大量输出工件)的过程,并找出其中存在问题或者不足的过程。并指出存在问题的具体位置以及引起问题的具体操作步骤,记录下测试时的错误状态,这样就能够在测试后将问题再现。
  1.黑盒测试
  黑盒测试也称功能测试,它是已知程序应当具有的每个功能,通过测试来检验工程的每个模块能不能正常使用。它从使用者的角度出发,将程序看成是一个不能打开的黑盒子。测试过程中,不考虑程序内部结构以及其内部特性,只在程序接口进行测试,这种测试方法只检验程序功能是否能够达到产品需要规格说明书的要求,能不能正常接收数据并输出正确的信息,并让外部信息保持完整。显然,用这种测试方法并不能发现外部特性本身的错误。
  黑盒测试有错误推测法、正交试验设计法、判定表驱动法、功能图法等测试方法,主要用于测试软件的功能需求和软件界面等。
  2.白盒测试
  白盒测试,也称逻辑驱动测试、结构测试。它了解了程序的内部工作过程之后,通过测试程序内部动作能否按照规格说明书的要求顺利进行,测试程序内部的每条通道能否按照预设正常工作。这种测试方法不考虑程序的功能。
  二、盒测试和白盒测试的应用
  1.黑盒测试的应用
  黑盒测试主要是测试软件的功能是否达到预期的目标,是否符合需求说明书要求。它是依照软件需求,设计文档,模拟用户实际场景进行的测试。这种测试技术包涵了测试的各个方面,它主要用来检查以下几个方面的错误:是否存在错误或者遗漏某种功能;对于接口上输入的数据能否正确的读取及是否能够正确的输出结构;是否存在数据结构上的错误或外部数据(如数据文件)访问上的错误;应用性能是否能够满足用户的需求;是否存在初始化及终止性错误。
  概括的来说,黑盒测试实际上是针对以下几点的检查:
  (1)正确性(Correctness):计算结果,命名等方面;
  (2)可用性(Usability):是否可以满足软件的需求说明;
  (3)边界条件(Boundary Condition):输入部分的边界值,就是使用一般书中说的等价类划分,测试最大最小和非法数据等等;
  (4)性能(Performance):如果在测试过程中发现性能问题,修改起来是非常巨大和艰难的工程,因为这通常意味着程序的算法或结果上的缺陷,因此在产品开发的初始阶段,软件性能的优劣应该作为首要问题考虑;
  (5)压力测试(Stress):多用户情况可以考虑使用压力测试工具;
  (6)错误恢复(Error Recovery):错误处理,页面数据验证,包括突然间断电、输入脏数据等;
  (7)安全性测试(Security):如防火墙、补丁包、杀毒软件等;
  2.白盒测试的应用
  白盒测试主要是对程序的过程性细节做详细的检测,它对软件的所有逻辑路径进行测试,要求测试人员熟悉程序的内部结构,是一种穷举路径测试。在应用这种测试技术时,测试人员应当检查程序内部逻辑结构,从而得出测试数据。贯穿程序的独立路径的数量庞大,因此,测试人员应用白盒测试时,对程序模块主要有以下检查步骤:
  (1)对程序所有独立的模块执行路径至少测试1次;
  (2)对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试1次:
  (3)在循环的边界和运行界限内执行循环体;
  (4)对内部数据结构的有效性测试等。
  但是纵使测试了每一条路径后仍然可能有错误,因为如果程序违反了设计规范,采用穷举路径测试并不能测试出来,如果程序本身存在错误,那么用这种方法也无济于事。另外,穷举路径测试也不能发现程序中有些与数据有关的错误,以及程序中因遗漏路径而出现的错误。
  综上所述,白盒测试虽能够深入程序内部、技术性也更强,但也不是万能的,有些错误用黑盒测试反而更加容易发现。
  3.白盒测试与黑盒测试的关系
  黑盒测试和白盒测试对于软件开发都具有极其重大的意义,两者不存在技术含量孰高孰低的区别,只是他们的侧重点以及使用的技术不相同。黑盒测试主要针对业务方面,而白盒测试的主要对象是实现方式的测试;黑盒测试更注重整体的完整性,而白盒测试则专注于局部的测试;黑盒测试更关注测试的结果,而白盒测试是对过程的测试。
  三、结语
  白盒测试和黑盒测试是软件测试中两种不同的测试方法。在整个的测试过程中两者各有所长,相辅而成,但在实践项目中测试工程师还是把黑盒测试作为主要测试手段,白盒测试作为辅助测试手段。因为,在测试软件时,必须先用黑盒测试来验证目标工程的正确性。倘若结果正确,再用白盒测试来检验其正确结果是否产生于正确的过程。倘若结果发生错误,则可用白盒测试来查找过程中错误的地方。一个完整的软件测试,是先经过黑盒测试的错误检查,再通过白盒测试的结果验证,才能说真正意义上的完整。
  参考文献:
  [1] 赵宸,浅析黑盒测试与白盒测试[J] -硅谷2010(11)
  [2] 冯凯,《软件测试的分类及方法》解析[J] -科技创新导报2010(9)
  [3] 梁红硕,冯晓东,贾永胜,论黑盒测试与白盒测试在软件测试中的不同作用[J] -商场现代化 2010(16) 本文链接:http://www.qk112.com/lwfw/jsjlw/jisuanjiyingyong/242200.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学