单元测试与以前不同了
测试代码功能逻辑,实现高效率高质量编程。
如果不做单元测试,编程产能大部分消耗在调试上。一个模块的纯编码时间如果为10,那么,即时调试(编码过程中的调试)时间在10-50之间,后期调试(集成后排除bug的调试)时间也在10-50之间。调试一个bug,一两个小时不知不觉就过去了,一两个小时能够编写一堆代码。
单元测试节约90%的调试,假如单元测试本身不消耗时间,那么,编写合格代码的产能可以提升两到三倍。可惜单元测试太难,太费时间,高成本基本上抵消了效益。虽然如此,还是有不少企业在实施或不断尝试单元测试,说明业界普遍认为,单元测试的效益,与投入相比,至少是持平的。
最新发布的C/C++单元测试工具Visual Unit 4,比现有的任何同类工具测试效率高10倍以上,意味着单元测试的时间成本降低90%,同时,只收服务费,使采购工具的成本也降低90%。如果在以前的时间成本和工具成本下,效益和成本是平衡的,那么,这两项成本双降90%意味着什么?大量的钱!如果程序员人手一套VU4,边开发边测试,对于一个效益还过得去的企业,一位中级程序员一年可以产生20万的效益!
10倍效率从何而来?
VU4完全表格驱动,不用写测试代码。请看下面的测试示例,测试涉及到:底层输入(调用底层函数产生的数据)、局部输出(执行过程中判断变量)、对象指针链表、对象指针映射表。使用VU4,点几下鼠标,在表格填几行数据就OK了,别的工具要写多少代码?且哪个能判断局部输出?岂止是十倍效率。这个示例未涉及到局部输入(中断输入、界面输入、静态输入等),其设置也一样。有些工具宣称自动生成用例完成测试,那不是高效率,那是高忽悠,工具不可能自动了解代码功能,因此不可能生成有意义的用例。VU4任意设置逻辑块的输入输出,一个函数多个逻辑块可以对应多个表格,天下没有难测的代码!
快速完成高标准覆盖
欧美航空标准MC/DC覆盖很强很科学,可是广受质疑,因为太难了,但使用VU4,则一点也不难。VU4针对未覆盖的逻辑单位,自动计算出近似用例及修改提示,根据提示修改近似用例,就可以找出隐藏很深的用例实现覆盖。完成高标准覆盖又是一个效率瓶颈,不过对VU4来说,却是一项拿手好戏,进一步拉大测试效率的领先距离。
舒服地高效地编写代码
逻辑块可视编程,提交前完成覆盖,只进行粗线条调试。这就是Easy TDD,舒服而高效的编程模式。总结
大道至简,使用VU4,单元测试很简单。
原文:http://blog.csdn.net/dellfox/article/details/18651151