![]()
测试自动化和持续交付
本文展示了自动化测试对于软件交付的重要作用,文章内容涉及:自动测试、发布成本、测试即文档以及手工测试。
Genuitec and Skyway Software的MyEclipse for Spring 8.6已经发布了 。这一版本包含了 Spring Core 、Adobe Flex、Spring MVC、 GWT、Spring Web Flow 以及 iPhone Web应用程序快速开发工具。该版本还引入了一套新的Spring开发编辑器和代码助手,帮助开发基于注解的Spring程序和JAX-WS制品。
JRebel 3.0于4月16日发布了,它以缩短Java开发周期为目标,去除了重新部署环节,改为支持高级的类重新加载。本文详细说明了在运行时更新Java类的一些技术细节并提供了JRebel所使用技术的概况,特别是新推出的3.0有哪些方面的改进。
Josh Bloch是《Effective Java》一书的作者,也是Google的首席Java传教士。最近他在基于Web的Read Hat中间件2020大会上做了一场演讲,主旨是对Oracle所管理的Java平台的未来表示出审慎乐观和忧虑。为更多了解其想法,InfoQ对Josh Bloch进行了采访。
Instantiations于3月22日发布了其GUI测试工具的主版本升级产品——WindowTester Pro 5.0,为SWT和Swing测试工具提供了对性能和Linux的支持。另外,还同时发布了WindowsBuilder Pro 7.4和RCP Developer 5.0小版本升级产品。
Tcat Server今天发布了,这是由MuleSoft(前身是MuleSource)所创建的一个基于Apache Tomcat的应用服务器。InfoQ有幸采访到了MuleSoft的Mahau Ma、Greg Schott和Ross Mason,以了解Tcat Server及另一个叫做iBeans的新集成框架的更多消息。

本文是模块化Java系列文章的第4篇,介绍的是声明式模块化。文中描述了组件如何以声明的方式来定义并组织在一起,而无需让代码依赖于OSGI API。声明式服务将被用来动态地把POJO们联系在一起,这样代码就再也不需要显式地注册或使用OSGi服务了,也无需任何启动顺序依赖。

模块化是大型Java系统的一个重要特点。建立脚本和项目时通常都将其劈成若干模块以便改善构建过程,但是这种模块化思想在运行时却很少被考虑到。本文是 “模块化Java”系列文章的第三篇,讨论动态模块化,内容涉及如何解析bundle类、bundle如何变化、以及bundle之间如何通信。

模块化是大型Java系统的一个重要特征。在这些项目中构建脚本和项目通常被划分为多个模块,以便改进构建过程,但是在运行时却很少考虑划分模块的问题。本文是“模块化Java”系列文章的第二篇,讨论静态模块化的相关内容,包括如何创建bundle、将其安装到OSG引擎以及怎样建立bundle之间的版本依赖。

过去几年,Java模块化一直都是一个活跃的话题。从JSR 227(现已废止)到JSR 291,以及正在进行中的JSR 294,模块化看起来是Java进化过程中的必经一环。即便是基于JVM的未来语言,比如Scala,也考虑了模块化的问题。那么,模块化意味着什么?为什么要关注它呢?
在本次访谈中,来自SpringSource的Graeme Rocher 和 Guillaume Laforge与我们讨论了Grails框架及Groovy语言的现在和将来。Rocher讲述了Grails 1.4【现已更名为2.0,具体信息参见这里】及其增强功能,比如对GORM的改进。Laforge则谈到了Groovy 1.8, 其中包括新的DSL表达能力。他们还谈到了Java未来的变化对他们项目的影响。