Maven开发过程实践之单元测试报告 test
2015-04-29 00:00
393 查看
原文:http://www.cnblogs.com/jinspire/archive/2011/10/31/2229764.html
IT男罗书全凝视着单元测试通过的一条条绿线,长长的舒了一口气,单元测试全部通过。于是他向老孙报告了此一情况,老孙表扬了罗书全,但是又说:“如果能把整个项目的单元测试情况做一个统计,并写成一个报告就好了。”
Maven许多report插件就是针对此类对项目的整体情况的分析统计以给管理人员提供项目质量的一个监控服务的。比如插件cobertura-maven-plugin提供单元测试整体覆盖率以及分支覆盖率的工具,给编写单元测试的开发者提供一个参考,看其中是否存在有重要代码遗漏的情况。
首先在pom.xml中做如下配置:
然后在项目目录下运行mvn cobertura:cobertura即可生成target目录下生成site\cobertura目录,里面存放了所有的单元测试报告,组织形式如javadoc.其中index.html对所有包的覆盖率做了统计。
点击任意包名,再点击类名,可以看到类中每一行代码是否被覆盖:
如上图所示,左端行号上为绿色的表示应该被覆盖到的代码行,右边无颜色的为已覆盖的代码,红色的为未覆盖的代码,非常直观的提醒了开发者。
需要提醒的是,cobertura只提供了行覆盖率的指标,但是对覆盖的代码质量如何它是无力判断的,不可过度推崇代码覆盖率,还应该和代码走查结合起来看覆盖的测试质量,再做总体判断为宜。
cobertura-maven-plugin还提供了mvn cobertura:check命令来在verify阶段查看代码覆盖率是否达到预设要求,给项目管理者提供了一个检查代码覆盖率的工具。
IT男罗书全凝视着单元测试通过的一条条绿线,长长的舒了一口气,单元测试全部通过。于是他向老孙报告了此一情况,老孙表扬了罗书全,但是又说:“如果能把整个项目的单元测试情况做一个统计,并写成一个报告就好了。”
Maven许多report插件就是针对此类对项目的整体情况的分析统计以给管理人员提供项目质量的一个监控服务的。比如插件cobertura-maven-plugin提供单元测试整体覆盖率以及分支覆盖率的工具,给编写单元测试的开发者提供一个参考,看其中是否存在有重要代码遗漏的情况。
首先在pom.xml中做如下配置:
<reporting> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> </plugin> </plugins> </reporting>
然后在项目目录下运行mvn cobertura:cobertura即可生成target目录下生成site\cobertura目录,里面存放了所有的单元测试报告,组织形式如javadoc.其中index.html对所有包的覆盖率做了统计。
点击任意包名,再点击类名,可以看到类中每一行代码是否被覆盖:
如上图所示,左端行号上为绿色的表示应该被覆盖到的代码行,右边无颜色的为已覆盖的代码,红色的为未覆盖的代码,非常直观的提醒了开发者。
需要提醒的是,cobertura只提供了行覆盖率的指标,但是对覆盖的代码质量如何它是无力判断的,不可过度推崇代码覆盖率,还应该和代码走查结合起来看覆盖的测试质量,再做总体判断为宜。
cobertura-maven-plugin还提供了mvn cobertura:check命令来在verify阶段查看代码覆盖率是否达到预设要求,给项目管理者提供了一个检查代码覆盖率的工具。
因此maven给管理者一套监控项目过程中代码质量的统计工具,也给开发者提供了衡量并改进代码测试的工具,提供了开发效率。
相关文章推荐
- Maven开发过程实践之单元测试报告 test
- Maven开发过程实践之四—(迅捷自测web应用)
- maven开发过程实践
- 测试驱动开发实践 - Test-Driven Development(转)
- 《程序员》06年8期:[管理&实践]软件开发过程中的测试管理
- 测试驱动开发实践 - Test-Driven Development
- 软件开发过程学习笔记(六)之测试报告模板 分类: 开发过程 2015-07-08 14:50 8人阅读 评论(0) 收藏
- 软件开发过程学习笔记(六)之测试报告模板
- 测试驱动开发实践 - Test-Driven Development
- 在开发过程中怎样利用单元和功能测试
- 测试驱动开发实践 - Test-Driven Development(转载的)
- 软件开发过程三 测试和维护
- Maven 使用profile来区分开发、测试、生产环境
- 高级软件测试过程实践
- jenkins+maven+junit构建自动化测试,整合junit xml生成直观的测试报告
- 测试驱动开发实践-重构篇
- 测试驱动开发实践-入门篇
- 使用ReportNg生成测试报告(Maven+Appium+TestNg+ReportNg)
- android 兼容性测试 CTS 测试过程(实践测试验证通过)
- 实验三 敏捷开发与XP实践实验报告