再谈有效测试——减少冗余和无价值的测试

发表于:2018-1-29 15:07

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:王小双    来源:软件工程之思

  要追求测试的有效性,就要减少冗余的和无价值的测试。冗余的测试,就是在不同的测试类型之间,存在的重复的测试;无价值的测试,则是执行了这样的测试,但和不执行测试一样,并没有给软件带来什么价值。所以,要追求有效的测试,就要减少这些冗余的和无价值的测试,把时间和精力用在那些更有价值的测试上。
  1.如何减少冗余的测试
  ●白盒测试黑盒测试的冗余
  软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试;黑盒测试,则是把要测试的软件看成一个黑盒子,不管其内部结构如何以及用什么算法实现需求提供的功能,而是按照需求的功能化要求,设计相应的测试用例,通过软件运行后所给出的输出与所预期的结果进行人工或者自动化比较,来验证被测试软件是否能给出正确的结果,从而判断该软件是否满足需求。
  虽然白盒测试与黑盒测试的方式不同,但在很多地方,白盒测试与黑盒测试会产生同样的效果(或者能推理出来),这样的测试就是冗余的。一般地,由于白盒测试要编写测试驱动程序、逐步跟踪源程序,比黑盒测试要麻烦得多,所以要如果能分析出来在黑盒测试与白盒测试间存在的冗余,我们就只执行黑盒测试,不用再进行冗余的白盒测试,这样就可以降低不少代价。
  实际上,白盒测试可以完成很多黑盒测试无能为力的工作,例如内存泄漏、误差累积、数据溢出,等等。所以,应当让白盒测试在这些方面发挥作用,而不用和黑盒测试去做同样的工作。
  ●回归测试中的冗余
  在集成测试、系统测试阶段,可能要执行多次“回归测试”。每一次“回归测试”都会存在不少的冗余,应当通过需求跟踪矩阵的分析,确定直接更改的模块对应的测试用例,和受更改影响的模块的测试用例,以剔除不必要的重复测试工作。
  2.如何减少无价值的测试
  无价值的测试通常是由于不懂测试技术引起的。例如黑盒测试中的等价类划分方法,在等价区间之中,只要测试一个典型的输入就行了,如果有人在此区间测试了100次,那么其中99次就是无价值的。要减少这样的无价值测试,要加强对测试技术的理解。
  总之,减少冗余测试和无价值测试是需要动脑筋的,做起来并不像说的那么轻松。但是,通过分析出测试工作中存在的冗余和无价值的测试,剔除这些无意义的工作,这样既精炼了测试工作,又不会危害软件的质量。

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号