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

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

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

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

  一个函数要“可测”,要做到两方面:第一是能够独立运行,第二是要能够覆盖输入分类。为什么要覆盖输入分类呢?因为单元测试的目标是覆盖代码单元的功能逻辑,要做到覆盖功能逻辑,就要覆盖输入的所有分类。如果代码可测性差,又没有办法解决的话,要么没法独立运行,要么做不到覆盖输入。这两点有一个做不到,就是不可测,或者达不到预期效果。

  我们先来看看独立运行。独立运行包括两点:一是与其他代码隔离,二是与依赖系统隔离。与其他代码隔离的一般方式是打桩,打桩就用简单代码代替实际的代码,例如函数A调用了函数B,函数B又调用了函数C和函数F,如果函数B用桩来代替,那么,函数A就可以完全切断与函数C和函数F的关系。与依赖系统隔离主要常见以跨平台测试,例如在PC上测试嵌入式项目。这要解决两个问题:编译差异和平台差异。因为编译环境可能不同,有些数据长度在不同平台上也可能不同,这些都是要解决的。

  总的来说,独立运行是比较容易解决的,例如打桩,就是一种简单的技术,并且可以用工具自动生成桩代码。

62/6<123456>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号