《Professional Java Tools For Extreme Programming》

SQ3R阅读法
 
Survey:浏览
1、书名:《Professional Java Tools For Extreme Programming》,自译名《Java极限编程的专业工具》
2、作者:Richard Hightower / Warner Onstine / Paul Visan / Damon Payne / Joseph D. Gradecki
3、本书内容:本书是一本专门为J2EE开发者在使用XP过程中会用到 的工具汇总及详细代码解释说明
4、将会学到哪些内容:
  • How to automate the building of J2EE apps and components with Ant and XDoclet
  • Techniques for automating Java testing JUnit
  • Procedures for automating servlet, JSP, and other J2EE testing using Cactus
  • Ways to automate Swing testing with Jemmy, JFCUnit, and Abbot
  • How to manage projects using Maven
  • Techniques for automating continuous integration with AntHill and Cruise Control
  • How to harness plugins for JUnit, Cactus, and Ant in the Eclipse IDE
  • Ways to implement Extreme Programming best practices
5、主要内容: XP方法中自动化测试和持续集成的开源工具实现
(This book describes techniques for implementing the Extreme Programming practices of automated testing and continuous integration using open source tools.)
 
6、主要的工具:Abbot , Ant , AntHill , Bugzilla,Cactus , CruiseControl , CVS , Eclipse , HttpUnit , Jemmy , jfcUnit , JMeter , JUnit , Maven.
7、Types of Automated Tests
  • JUnit——Unit Tests(单元测试)
  • Cactus——Integration/In-Container Tests(集成、容器内测试)
  • HttpUnit——Acceptance/Functional Tests(验收、功能测试)
  • JunitPerf 、JMeter——Performance Tests(性能测试)
 
Question
1、JAR file
 
Read:
 
一、XPToolkit——Ant
 
1、Ant起源
        1998年,有一位程序员改变了整个Java 世界。 James Duncan Davisdson在试图使用当时的构建工具(GNU Make、批处理文件和shell脚本)来创建一个跨平台的Tomcat构建时,做了多种努力均不能成功。因此,他在从欧洲飞回美国的途中设计出了自己的构建实用工具,并为命名为Ant,因这是一个小东西,但却能做大事。James为了解决自己的问题(即创建一个跨平台的构建)而提出的这种快速而简单的解决方案已经演变成Java环境中应用最为广泛的构建管理工具。
 
2、Ant是什么,有什么优势?
    Ant 是一个将 源码获取、编译、测试、打包、部署等步骤联系在一起 加以优化的一个构建工具,常用于Java环境中的软件开发。Ant的默认配置文件是build.xml。
 
3、Ant和Make等工具相比的优势
(1) 跨平台:因为 ant 是使用 java 实现的,所以跨平台; ——其他工具如make、shell、批处理文件等不具有该特点;
(2) 使用简单:比其他构建工具简单,特别是和 ant 的兄弟 make 做比较;——make 是unix、linux下的重要工具,无论是项目开发还是安装软件都需要用到;
(3) 语法清晰:同样是和 make 做比较; ——make调用、解释makefile文件相当于ant调用、解释build.xml文件
(4) 功能强大:Ant能做的事情很多,可能你用了很久,你仍然不知道它能有多少功能。当你需要自己开发一些 ant 插件的时候,你会发现它更多的功能。
 
4、Ant入门、进阶等信息请参考: http://wenku.baidu.com/view/608dfe4ff7ec4afe04a1df48.html
 
5、Ant参考书籍:《Ant权威指南》
 
二、XPToolkit——CVS
 
1、CVS与SVN区别
 
三、XPToolkit——XDoclet
 
1、XDoclet是什么?
        XDoclet 是一个 通用的代码生成实用程序,是一个 扩展的Javadoc Doclet引擎(现已与Javadoc Doclet独立), XDoclet是EJBDoclet的后继者,而EJBDoclet是由Rickard Oberg发起的。它允许您使用象 JavaDoc 标记之类的东西来 向诸如类、方法和字段之类的语言特征添加元数据。随后,它利用这些额外的元数据来 生成诸如部署描述符和源代码之类的相关文件。可以让你创建自己的javadoc @tags进而利用XDoclet中的Templet engine基于这些@tags生成源代码或其他文件(例如xml的deployment descriptors)。
 
    XDoclet 继承了 JavaDoc 引擎的思想, 允许自己定制模板。当然,XDoclet 也可以访问整个解析树。这样,它就可以访问类、类的包结构和类的方法。给这一概念起了一个名称:面向属性的编程(attribute-oriented programming)(不要与面向方面的编程(aspect-oriented programming)相混淆,这是另一个 AOP)。
 
2、XDoclet详解
参见文章: XDoclet详解
 
四、XPToolkit——Junit
 
1、java代码的单元测试工具!
 
 
五、XPToolkit——JunitPerf
1、JunitPerf是什么?
        JUnitPerf是单元 性能测试,区别于一般常见的单元测试!Junitperf实际 是junit的一个decorator,通过编写用于junitperf的单元测试,我们也可使测试过程自动化。
 
2、JUnitPerf测试原理?
        JUnitPerf对 单元测试的执行效率进行测试,由于 单元测试实际上是调用的单元代码,因此测试单元测试的执行效率就可以直接反映出单元代码的效率!
 
 
六、XPToolkit——Bugzilla
 
1、缺陷追踪、管理工具!
 
七、XPToolkit——HttpUnit
 
1、HttpUnit是一个集成测试工具,主要关注Web应用的测试,提供的帮助类让测试者可以通过Java类和服务器进行交互,并且将服务器端的响应当作文本或者DOM对象进行处理。HttpUnit还提供了一个模拟Servlet容器,让你可以不需要发布Servlet,就可以对Servlet的内部代码进行测试。本文中作者将详细的介绍如何使用HttpUnit提供的类完成集成测试。
 
八、XPToolkit——JMeter
 
1、JMeter可以用于测试静态或者动态资源的性能(文件、Servlets、Perl脚本、java对象、数据库和查询、ftp服务器或者其他的资源)。JMeter用于模拟在服务器、网络或者其他对象上附加高负载以测试他们提供服务的受压能力,或者分析他们提供的服务在不同负载条件下的总性能情况。你可以用JMeter提供的图形化界面分析性能指标或者在高负载情况下测试服务器/脚本/对象的行为。
 
九、XPToolkit——Cactus
 
1、容器内测试框架,主要对J2EE应用进行测试。
 
十、XPToolkit——JCoverage
 
1、JCoverage是一款代码覆盖率测试工具,但是现已收费,可替代的工具是 Cobertura
         Cobertura 是 jcoverage 的分支。GPL 版本的 jcoverage 已经有一年没有更新过了,并且有一些长期存在的 bug,Cobertura 修复了这些 bug。原来的那些 jcoverage 开发人员不再继续开发开放源码,他们转向开发 jcoverage 的商业版和 jcoverage+,jcoverage+ 是一个从同一代码基础中发展出来的封闭源代码产品
 
2、Cobertura作为代码覆盖率测试工具主要有以下几个测试点:
  • 行覆盖率测试(line Coverage)——源码中的每一行是否都测试到了?
  • 分支覆盖率测试(branch Coverage)——源码中的每一个分支清苦是否都测试到了?
  • 代码复杂度(Complexity)
十一、XPToolkit——Jemmy
 
1、 java图形界面的单元测试
 
十二、XPToolkit——JFCUnit
 
1、JFCUnit 是一款在 JUnit 基础上针对 Swing GUI 扩展的单元测试工具。在同一个应用程序中,我们可以通过组件发现方法查找到组件,模拟用户动作触发组件事件来提供测试驱动,通过断言验证组件状态是否正确。
2、优点:
  • 继承了 JUnit ,具有 JUnit 进行单元测试的所有优点;
  • 提供了一系列 GUI 组件发现方法及用户动作模拟方法。
十三、XPToolkit——Maven(出自 Apache Jakarta 项目的高级项目管理工具)
 
1、Ant 提供的东西,Maven都能提供,而且更多。
 
十四、XPToolkit——CruiseControl
1、CruiseControl是一个针对持续构建程序(项目持续集成)的框架,它包括一个email通知的插件,Ant和各种各样的CVS工具。CruiseControl提供了一个Web接口, 可随时查看当前的编译状况和历史状况。
 
2、Apache Continuum 是最新的 CI 服务器之一,也是值得关注的一个新进入者。Continuum 的安装和配置很简单:只要下载和释放 ZIP 文件,运行命令行程序,就可以运行了。基于 Web 的界面使得配置项目很容易。而且,还不需要安装 Web 服务器,因为 Continuum 内置了 Jetty Web 服务器。并且,Continuum 可以作为 Windows 服务运行,还在应用程序的某些部分嵌入了上下文敏感的文档,从而提供了很多帮助。
 
3、Apache Continuum的特性:
  • 与Maven 2.x的紧密集成
  • 与Maven SCM的紧密集成,支持Subversion/CVS/Starteam/Clearcase/Perforce
  • 基于web的容易使用的安装和配置接口
  • Quartz-based scheduling
  • 简单的添加新的项目工程的方法
  • 用于 integration, automation and remoting的XML-RPC interface
  • 邮件提醒和IM(即时通讯)提醒IRC/Jabber/MSN
 
十五、XPToolkit——AntHill
 
 
 
 
 
针对以上各个工具,每一个进行亲自动手尝试,然后写出博客!
 
 
 
 
 
Recite
 
Review
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值