IT培训网 - IT职场人学IT技术上IT培训网
黑盒测试和白盒测试的区别 两者有何优缺点
时间:2018-09-26 15:19:39 来源:IT资讯网 作者:IT培训网 已有:名学员访问该课程
说到黑盒测试和白盒测试,两者各有其优缺点,黑盒测试和白盒测试是软件测试中不可或缺的方法,为了发现程序中的错误而执行程序的过程,常用黑盒功能测试法和白盒结构测试法进行测试,下面我们就由IT培训网老师给大家详细解说一下两者区别?
黑盒测试和白盒测试优缺点有哪些?
黑盒功能测试法
所谓黑盒功能测试法,就是把要测试的软件看成一个“黑盒子”, 不管其内部结构如何以及用什么算法实现需求提供的功能,而是按照需求的功能化要求,设计相应的测试用例(包括测试的输入数据与条件设置和所预期的软件运行输出结果),通过软件运行后所给出的输出(包括字符形式的输出与图象输出)与所预期的结果进行人工或者自动化比较,来验证被测试软件是否能给出正确的结果, 从而判断该软件是否满足需求。
优点:
1、能最直观、最直接地反映出所设计的软件是否满足需求;
2、即使没有任何测试工具支援,也能靠人工测试的方法完成;
缺点:
1、难以找出某些特殊类型的错误。例如: 当对应于某组输入该被测软件并不提供任何输出信息时,可能只是改变了某种工作状态,如果其中的源代码处理部分有错误,就比较难找出来;
2、无法确定哪些测试用例有效或者无效 (所谓无效, 并不是说单独使用某个测试用例时不能收到任何测试效果,而是在于它和前面已经使用过的测试用例一起使用时,毫无贡献, 只是重复了前面的测试用例已经完成的测试);
3、具有无可避免的盲目性。当软件被修改后, 由于不知道哪些测试用例能测试到被直接修改过的模块或者受修改过的模块影响的模块, 于是只好将所有测试用例再从头运行一遍,而且是动态运行,非常费时费力。
白盒结构测试法
与黑盒子功能测试方法相反,白盒结构测试法不管所被测试的软件是否满足需求,是否实现了所设计的功能,而只注重该软件内部的结构, 以便设计足够多的测试用例,使得百分百或者尽可能多的程序组成要素能被测试到最少一次, 从而尽可能地将其中的软件错误暴露出来。
优点:
1、能够找出许多用功能测试方法找不出来的软件错误;
2、可以在整个软件系统还未完成之前就分别对各个单元进行测试;
3、可以通过测试用例的有效性分析而实现测试用例的最小化,以便大大地缩短软件修改后的回复测试时间和费用;
4、可以同时进行内存泄漏分析;
5、可以同时进行分支执行频度分析;
6、可以同时进行软件复杂度分析;
7、可以同时进行数据和变量分析;
8、可以同时进行性能分析;
9、可以同时进行动态运行错误定位与执行路径追溯等。
缺点:
1、必须通过专门的测试工具来进行,需要在用户的软件的拷贝上进行插桩(插入纪录点)记录各分支/条件是否被执行过或者执行过多少次的信息;
2、会使被测试的软件的运行速度减慢;
3、需要增加被测试软件运行时的资源开销等。
综上所述是黑盒测试和白盒测试的一些优缺点,当然软件测试中常用的技术远不止这两种,还有自动化测试、性能测试等等,对于常见的黑白盒两种测试方法,我们要熟知,对我们今后的工作学习开展将会非常有利。
每期开班座位有限.0元试听抢座开始!
温馨提示 : 请保持手机畅通,咨询老师为您
提供专属一对一报名服务。