通过持续集成尽早发现缺陷 - 编程入门网
8 IBM Andrew Glover
查看细节有助于纠正问题,见图 24。在这个示例中,可以看到项目的两个类 出现了违规。一个是 Priority 1 违规,另一个是 Priority 2 违规。根据 CI 的开发节奏,应该马上开始纠正这些问题。 纠正错误并将修改签入 Subversion 之后,Hudson 最终会执行构建。在执行 构建之后单击 Build Status 链接,会看到 Hudson 指出一个 bug 已经纠正了, 见图 25: 图 25. 一个 bug 被纠正了,另一个仍然存在 另外,项目主页上会显示新的趋势图(见图 26),它表明已经纠正了一个 bug: 图 26. bug 数量呈下降趋势 —— 不错! 显示 FindBugs 违规的趋势和使用 bug 阈值影响构建的总稳定性是两个出色 的 Hudson 特性。而且,设置这两个特性非常容易。只需下载并安装 FindBugs, 就可以在项目构建过程中运行 FindBugs。 PMD 还有一些 Hudson 插件与代码检查相关,其中最著名的是 Violations 插件, 它可以为多种工具生成趋势,包括 PMD、CheckStyle 和 FindBugs 等。既然已经 运行了 FindBugs 插件,就可以用 Violations 插件专门监视 PMD 数据。在本教 程前面设置 Ant 构建文件时,我们让 PMD 输出 XML 报告。Violations 插件使 用这些报告分析数据趋势。 如图 27 所示,这个插件的设置方式与 Hudson 中的其他趋势工具相似:只需 指定要监视的工具的 XML 报告位置。当然还有其他选项,但是对于基本特性,指 定 XML 报告的位置并单击 Save 就够了。 图 27. 配置 Violations 插件 请记住,需要让 Hudson 实际调用运行这些工具的 Ant 目标;在这个示例中 ,已经定义了一个 PMD 目标,所以只需更新 Hudson 来运行 PMD(以及 FindBugs 和测试,运行测试会导致编译)。 通过持续集成尽早发现缺陷(18)时间:2011-07-08 IBM Andrew Glover修复并重复 在执行构建并研究 PMD 数据之后,可以开始纠正代码。如图 28 所示,在 Builds 13 和 14 之间减少了 13 个 PMD 违规。不错吧?代码已经越来越好了! 图 28. 已经纠正了一些 PMD 违规! 趋势 Violations 插件也支持趋势;如图 29 所示,它甚至按照工具分别生成数据 趋势;在这个示例中,它同时寻找 FindBugs 数据和 PMD 数据。随便问一句,您 能够从图 29 中看出一些 FindBugs 违规也已经被纠正了吗? 图 29. 违规呈下降趋势 与前面看到的测试趋势和 FindBugs 趋势一样,Violations 插件也在项目的 主页上显示总违规数量的变动情况,见图 30: 图 30. 违规数量随时间变化的趋势 显然,Hudson 的插件让我们能够一目了然地看到代码基的情况;而且,显示 数据趋势的特性让我们能够设置目标并监视它们的变化,这样就不必反复查看定 制报告的具体内容。从某种意义上说,Hudson 创建了一个项目 “仪表板”,让 我们能够快速理解数据。 结束语 持续集成过程要经常编译、测试、检查和部署源代码。CI 的好处很容易理解 :经常组装软件,就可以在早期发现问题,而问题在早期还不复杂,容易解决。 在本教程中,您了解了 CI 的基本方面。我介绍了一些用于 CI 的工具(即 Hudson、Ant 和 Subversion),并讲解了如何使用这些工具设置 CI 环境。本教 程使用的框架提供一个可重复且可靠的构建过程,这个构建过程运行 JUnit 测试 并通过 PMD 和 FindBugs 进行软件检查。学习了如何正确地配置 Hudson CI 服 务器,让它检查 SCM 存储库并在探测到修改时运行构建过程。还学习了如何使用 Hudson 的插件生成各种结果的趋势。 现在您应该有信心快速地构建高质量的软件了! |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |