软件测试 之 黑盒测试 掠影

简单地说,软件测试可以分为两大类:黑盒测试与白盒测试。

白盒测试:是通过程序的源代码进行测试而不使用用户界面,这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中

的缺点或者错误,进而加以修正。

黑盒测试:又被称为功能测试、数据驱动测试或基于规格说明的测试,是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查

程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。

其大致原理如下图所示:

黑盒测试与白盒测试的一些简单对比,如下表所示,两者的主要区别显而易见:

黑盒测试注重于测试软件的功能需求,主要试图发现下列几类错误:

1. 功能不正确或遗漏;

2. 界面错误;

3. 输入和输出错误;

4. 数据库访问错误;

5. 性能错误;

6. 初始化和终止错误等。

测试原理:

从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。实际上测试情况有无穷多个,人们

不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测

试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测

试行为具体量化的方法之一。

具体的黑盒测试用例设计方法包括:

1. 等价类划分法;

2. 边界值分析法;

3. 错误推测法;

4. 因果图法;

5. 判定表驱动法;

6. 正交试验设计法;

7. 功能图法;

8. 场景法等。

黑盒测试的大致流程:

1. 测试计划

首先,根据用户需求报告中关于功能要求和性能指标的规格说明书,定义相应的测试需求报告,即制订黑盒测试的最高标准,以后所有的测试工作都将围绕

着测试需求来进行,符合测试需求的应用程序即是合格的,反之即是不合格的;同时,还要适当选择测试内容,合理安排测试人员、测试时间及测试资源等。

2. 测试设计

将测试计划阶段制订的测试需求分解、细化为若干个可执行的测试过程,并为每个测试过程选择适当的测试用例(测试用例选择的好坏将直接影响到测试结

果的有效性)。

3. 测试开发

建立可重复使用的自动测试过程。

4. 测试执行

执行测试开发阶段建立的自动测试过程,并对所发现的缺陷进行跟踪管理。测试执行一般由单元测试、组合测试、集成测试、系统联调及回归测试等步骤组成,

测试人员应本着科学负责的态度,一步一个脚印地进行测试。

5. 测试评估

结合量化的测试覆盖域及缺陷跟踪报告,对于应用软件的质量和开发团队的工作进度及工作效率进行综合评价。

黑盒测试的缺陷:

如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

时间: 2024-10-11 18:53:57

软件测试 之 黑盒测试 掠影的相关文章

软件测试:黑盒测试实验报告及感想

实验名称 Win8 APP应用程序的黑盒测试 实验目的 练习使用visual studio的编码的UI测试功能, 实验内容和步骤 实验内容            在Windows应用商店下载应用程序,使用visual studio进行测试   实验步骤 1,下载应用程序        我选择了上学期同组同学在c#课程上编写的应用程序<后宫甄嬛传>进行测试 2,新建编码的UI测试 新建-项目-测试-编码的UI测试项目   3,录制步骤生成代码 确定开始录制 打开需要测试的应用程序 单击开始录制

【软件测试】黑盒测试的错误输入判断以及实例设计

本次学习内容为黑盒测试的错误输入分析: 黑盒测试中,输入数据的范围类型有可能引起程序无法分析的错误,因此在试验实例设计中,考虑到多种输入的方法十分重要. 常见的输入数据有: 1 数字: 1234567... 2 字母: abcdef... ABCDEF.... 3 符号: !@#¥%…… 4 字符: 啊额的... 这些以及他们的混合输入测试实例. 如果我们输入错误,那么有可能的情况有: 1 输入数字的值过大范围过大,超出范围(如2的16次方等) 2 输入非法,限定在数字范围输入字母等 因此在设计

软件测试技术----黑盒测试

以下纯属个人理解:如有什么不对的请多联系指教. 有参考(http://wenku.baidu.com/link?url=R47d3QatLS8UsDWNIlSEOyvgVNFiLr8AZnhiPJ7_ur_sH4xoeZUfjFhL4zjE0P6bpDtqx3L9_2jlrNMJGJJLpgE-5ycrRqbaJ1ZEZckhFum) 4.为什么要进行等价类的划分?等价类划分应该遵循哪些原则? 答案:使用等价类测试方法可以大大减少测试用例的数目,从而提高测试效率. 特点:完备性--划分出的各个等

黑盒测试学习个人总结

软件测试是在软件开发过程中,寻找软件问题,衡量软件质量,对其是否能达到预期目标的一个评估过程,常见的软件测试有黑盒测试和白盒测试. 黑盒测试,就像其名字一样,软件如同被装备在一个黑盒子里,你无从了解其内部构造,只知道其输入与输出,即软件的功能,所以黑盒测试又被称为功能测试,是站在用户立场上的,检验输入输出信息及系统性能指标是否符合规格说明书中有关功能需求及性能需求的规定. 在传统的软件开发流程中,测试往往是最后进行的,此时软件测试的工作量十分巨大,且由于时间周期过长,程序员需要花费很长的时间对色

结对编程之软件测试

软件测试分为黑盒测试和白盒测试.我们按照书上的类容对在刚刚完成的程序上进行了这两类方法的基本测试. 黑盒测试:采用了等价类划分方法测试,具体操作如下: 1)划分等价类并进行编号 输入等价类 有效等价类 无效等价类 题目数量 1)1~300之间 2)小于1 3)大于300 生成数字范围 4)-100~100之间 5)小于-100 6)大于100 是否有小数 7)有 8)无   小数精度范围 9)0~6之间 10)小于0 11)大于6 2)设计测试用例,一遍覆盖所有的有效等价类在表中列出了3个有效等

软件测试之黑盒测试及其实际应用

软件测试的黑盒测试是将被测软件看作一个打不开的黑盒,只关心软件的输入数据和输出结果. 黑盒测试完全不考虑程序内部结构和内部特性的情况下,只依靠被测程序输入和输出之间的关系和程序的功能来设计测试用例. 测试方法 等价类划分法 边界值划分法 决策表划分法 实质 将程序输入域划分为若干个互不相交的子集(等价类),然后从每个等价类中选取少数的具有代表性的数据作为测试用例进行测试 将定义域或值域的边界附近的值作为测试用例,对于每个被保留的测试变量,分别取值min(最小值),min+(稍大于最小值),nom

软件测试技术及其过程

从是否需要执行被测软件的角度,将软件测试分为静态测试和动态测试.静态测试是指被测试程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测,主要方法包括人工测试和计算机辅助静态分析.相对动态测试,静态测试可以更早地进行.静态分析的查错和分析功能是其他方法所不能替代的,静态分析能发现文档中问题.目前,静态测试已被当做一种自动化的.主要的代码校验方法.但静态测试不能检测程序的实际执行情况,无法得到程序的执行结果.动态测试是实际运行被测程序,输入相应的测试用例,判定执行结果是否符合

软件测试基础入门知识点

软件测试基础入门知识点 一.行业前景 前言 ? 程序员之间流传着这样一句话:有人喜欢创造世界,他们做了开发工程师,有人喜欢挑毛病,所以他们做了测试工程师. 什么是软件测试 软件测试就是利用手工或测试工具按照测试方案和流程对产品进行功能和性能测试,简单的来说就是为软件做"质检". 软件测试的重要性 ? bug 的经济损失: ? 软件 bug 对我们的生活,工作都会带来毁灭性的破坏.据悉,每年的软件 bug 会让整个市场经济带来近600亿美元的损失! 成立软件测试部门的原因 软件测试能提前

《软件工程概论》第六章核心内容

软件测试是在软件投入生产性运行之前,对软件需求分析.设计规格说明和编码的最终复审,是软件质量控制的关键步骤.  软件测试的对象:需求分析.概要设计.详细设计及程序编码等阶段所得的文档资料,包括需求规格说明.概要设计规格说明.详细设计规格说明以及源程序.  确认是一系列的活动和过程,目的在于证实在一个恰当的外部环境中软件的逻辑正确性,分为静态确认和动态确认.  验证是试图证明在软件生存期各个阶段以及阶段间的逻辑协调性.完备性和正确性.确认与测试都属于软件测试.  黑盒测试:已知产品的功能设计规格,