科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道企业应用开发中的JAVA开源项目

企业应用开发中的JAVA开源项目

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

  近两年,开放源码项目发展日益壮大,出现了很多有着广阔用户群体的项目与产品,它们在企业应用开发中正在发挥着越来越大的作用。本文以基于J2EE架构的企业应用开发为例,探讨了如何在项目中深入运用JAVA开发源码项目与工具。

作者:中国IT实验室 来源:中国IT实验室 2007年9月30日

关键字:

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共4页)

  一般意义上,可以采用Cactus作集成测试;而使用HttpUnit做功能测试。

  虽然在集成与功能测试方面,有很多优秀的开源工具,但是在实际应用过程中,还是采用商业测试软件的比较多,对于复杂应用更是如此。这是因为集成与功能测试大部分还是由专门的测试人员进行,而他们对于已有的商业软件,例如Rational Robot、E-Test Suite、WinRunner等都比较熟悉,同时商业软件也提供了更为强大的功能。

  压力与性能测试: JMeter (http://jakarta.apache.org/jmeter/)

  由于企业应用越来越复杂,用户数量也是越来越多,系统的性能参数以及众多的非功能性需求在开发中获得了越来越多的重视。因此,很多压力与性能测试工具也开始出现,这其中有一定影响的是Apache Software Foundation的JMeter。

  JMeter是100%的JAVA桌面应用,用来测试系统的负载与性能。它最开始设计是用来测试WEB应用,后来加以扩展,可以测试Http,FTP,支持JDBC的关系型数据库的性能与压力。同时,JMeter提供一定的定制功能,系统集成商可以自行开发针对EJB、CORBA或者SOAP的插件。

  压力与性能测试方面,由于测试比较复杂,实际企业应用测试中,也是采用商业测试软件比较多,例如LoadRunner、JProbe Suite以及与JBuilder8 同步发布的OptimizerIT;

  3)日构建

  在软件开发的领域里有各种各样的"最佳实践",它们经常被人们谈起,但是似乎很少有真正得到实现的。这些实践最基本、最有价值的就是:都有一个完全自动化的创建、测试过程,让开发团队可以每天多次创建他们的软件。

  "日创建"也是人们经常讨论的一个观点,McConnell在他的《快速软件开发》中将日创建作为一个最佳实践来推荐,同时日创建也是微软很出名的一项开发方法。但是,我们更支持XP社群的观点:日创建只是最低要求。一个完全自动化的过程让你可以每天完成多次创建,这是可以做到的,也是完全值得的。

  Ant是Apache Jakarta的一个项目,是"不带 make 缺点的 make"。Ant 正在成为开放源代码世界中实际上的标准。原因很简单:Ant 是使用 Java 语言编写的,这种语言可以让创建过程在多种平台上使用。

  Ant目前的版本为1.5,它的执行是基于一个XML文件,配置文件由目标树构成。每个目标都包含了要执行的任务,其中任务就是可以执行的代码。在下面给出的例子中,mkdir 是目标 compile 的任务。mkdir 是建立在 Ant 中的一个任务,用于创建目录。 Ant 带有一套健全的内置任务,也可以通过扩展 Ant 任务类来添加自己的功能。

  Ant内置了对于JUnit、CVS、ClearCase、Visual SourceSafe以及CheckStyle的支持,通过于系统定时功能,例如Windows的"任务计划"或者Linux/Unix的"cron",可以很方便的利用Ant来自动完成每日构建的工作。

  4)持续集成

  持续集成是XP的重要实践之一,Martin Fowler在参考文献[6]中有详细的介绍,上述实践都是它的基础。

  开源项目中有一个著名的工具是用来帮助实现持续集成的:CruiseControl,其次,目前还有一款商业软件AntHill也为持续集成提供了很好的支持。

  CruiseControl (http://cruisecontrol.sourceforge.net/)

  CruiseControl是著名的ThoughtWorks公司的产品,目前它的源码已经公开,它是一个持续集成的框架。它包含,但是并不局限于Email通知、Ant以及其他源码控制工具。同时,它还提供了WEB界面来查看当前和已往Build的详细信息。

  AntHill (http://www.urbancode.com/projects/anthill/)

  AntHill可以确保Build过程受控,同时,帮助组织内部的知识共享。它在每次Build之前从源码控制系统 (CVS、VisualSourceSafe、ClearCase等) 中获取最新的源码,同时在 Build完成之后为源码分配一个唯一的数字进行标定。同时,它还会在根据Build的情况,更新Intranet的信息。

  5)小步发布

  有了以上实践的支持,小步发布就有了实现的可能。XP强调在非常短的周期内以递增的方式发布新版本,从而可以很容易地估计每个迭代周期的进度,便于控制工作量和风险;同时,也可以及时处理用户的反馈。

  为了成功的进行应用系统的版本发布,需要SCM,尤其是源码控制程序的配合。在开源项目中,CVS (Concurrent Version System) 是最著名的版本控制程序。

  目前CVS的版本为1.5.11,它是一个将一组文件放在层次目录树中以保持同步的系统。人们可以从 CVS 服务器上更新他们的本地层次树副本,并将修改的结果或新文件发回;或者删除旧文件。CVS 基于客户端/服务器的行为使得其可容纳多用户,构成网络也很方便。这一特性使得 CVS 成为位于不同地点的人同时处理数据文件(特别是程序的源代码)时的首选。所有重要的免费软件项目都使用 CVS 作为其程序员之间的中心点,以便能够综合各程序员的改进和更改。

  基于多个操作系统的CVS的客户端软件也很多,其中以WinCVS最为著名。

 

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章