记录阿里巴巴QA架构组成长点滴。2008年关键词为效率,技术,影响力!QA/测试架构师定义:开发和设计测试框架测试库;纵横全局的考虑产品的功能,设计复杂的测试系统;负责研发某一项特定的测试技术;为公司考虑如何提高测试效率。领导公司测试技术的发展和测试策略上的方向,关注整个公司的测试部门的问题,前瞻性的考虑未来的版本的测试策略和技术。测试架构师计划/设计测试平台,关注着产品的测试过程,提供咨询服务,影响到公司内的测试机构测试社区,以及开发机构等,对产品各个方面施加深远而正确的影响,最终提高整体软件质量。

如何引入代码覆盖率度量提高测试质量

上一篇 / 下一篇  2008-07-12 15:48:57 / 个人分类:开源工具与新技术研究

by liangjz

我们面临的困境
1) 开发编写的单元测试代码可信度
2) 功能测试或者自动化测试效果可信度

为了提高测试过程的质量,是一个复杂系统过程。国外好些年前就引入代码覆盖率工具,比如
EMMA/Clover。
呵呵,据了解ebay中国的开发采用EclEmma

经过初步评估,针对java语言的EMMA 和针对 linux+ c/c++ +gcc的gcov/lcov都只能做到语句覆盖、函

数覆盖、类覆盖。对于路径覆盖、条件覆盖等无法做。要做到更加精细,可以考虑结合Jester。

代码覆盖率工具最让人震撼的是,无须单元测试代码,可以清楚看到执行过/未执行过的代码行,以及由

宏观到微观的度量结果。另外引入代码覆盖率工具,无须修改代码,成本极低。

这个结果对于开发而言,可以增加自己负责的模块的单元测试代码,或者去除死代码。
对于测试而言,可以增加测试用例提高覆盖率,提高测试结果的信心度。

尽管代码覆盖率工具有这样或者那样的不足,也极难做到100%覆盖,但综合权衡,引入工具还是有积极

的意义。

推广代码覆盖率的规划:

1) 选取一个小型WEB应用代码覆盖工具,结果供测试工程师,分析代码覆盖率效益
2) 大型项目应用代码覆盖工具
3) 在研发部门推广EclEmma插件 和gcov/lcov
4) 经过一段时间实践,在开发提交代码给测试时,要求一起提交代码覆盖率源文件。

难点:

1) 测试工程师面对未覆盖的代码行,要有阅读代码能力呼应到业务操作,以有针对性增加测试用例
1) 加入代码覆盖率结果,意味对上游输出把握更加严格,要求研发部门经理和开发的意识转变以及实质性支持

欢迎这方面有实践的朋友多提建议,谢谢

 


TAG: emma EclEmma gcov lcov 代码覆盖率分析 开源工具与新技术研究

 

评分:0

我来说两句

日历

« 2024-04-19  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 154189
  • 日志数: 163
  • 文件数: 1
  • 建立时间: 2008-02-26
  • 更新时间: 2008-12-10

RSS订阅

Open Toolbar