征服单元测试可测性难题(上)

发表于:2010-4-28 11:49

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

 作者:dellfox(CSDN)    来源:51Testing软件测试网采编

  一、可测性问题详解

  单元测试效益特别高,方法也很简单,但却尝试的企业很多,成功实施的企业很少,为什么呢?主要原因就是难于突破可测性问题。“可测”这个词,意思已经很明白了,如果不“可测”的话,那就是不能测,没法测,就是做不下去,或者困难太多,成本太重,热情被逐渐消磨,最后做不下去。所以可测性问题是单元测试的关键,是我们首先要解决的。

  可测性问题是指代码的可测性很差,导致测试很困难,这是单元测试的关键阻碍。为什么代码的可测性会很差呢?原因是什么?一般来说,这些原因导致了代码的可测性差:项目很复杂,开发流程不规范,耦合度很高。耦合是指代码之间的互相依赖,例如一个函数调用另一个函数,就是耦合。

  一般的建议是改进开发流程,提高代码可测性。但从实践来看,这是不现实的。可测性差在企业项目中普遍存在,有其客观原因,很难改变。首先,企业项目本身就多是很复杂的,这是需求决定的,改不了。其次,程序并不是虚无的,程序是客观事物的反映,客观事物本身是互相关联,互相纠缠的,必然形成代码间的耦合。第三,流程改进是一个长期的、渐进、困难的过程,不可能短期内实现飞跃,更不是引进几个工具或者规范就可以做到的。这方面我有过教训,几年前,我也认为可以通过流程改进来提高可测性,也给客户推荐过相关的解决方案,结果都差不多:劳民伤财。所以,可以说,可测性差有其必然性,这是客观现实。

  那么,如何解决可测性问题呢?只有从测试技术的角度来考虑,才有可能找到真正有效的途径。要解决问题,我们首先要对问题有充分的了解,现在来看看可测性问题具体包含什么。

61/6123456>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号