近日发布的 Eclipse Indigo 包含了 Jubula ——面向 Java 与 HTML 应用的自动化功能测试工具。你可以通过拖拽内建的测试库来创建测试而无需应用记录或是测试编程。Jubula 是 Eclipse for Testers 包的一部分,但也可以作为独立的 RCP 应用下载。
Jubula 提供了内建的独立于应用与工具集的测试动作。你可以独立于应用 UI 开发测试。这样,测试团队就可以与开发团队并行开发功能 GUI 测试,并且将精力放在需求而非具体实现上了。Jubula 还将测试驱动开发带到了功能 GUI 测试领域当中。由于独立于工具集,你还可以使用相同的方式开发测试脚本,无论被测试的应用基于 Swing、SWT 抑或是 HTML。
很多测试工具要么是捕获——重放工具,要么需要编写测试脚本。捕获——重放工具会生成大量代码,这些代码本身就足以成为一个项目了。你需要对生成的代码进行重构,使之具备更好的模块性与健壮性。手工编写的测试脚本更易于操控,但却需要花费更多的时间,并且要求测试人员具备更好的技能。Jubula 测试的开发速度很快,健壮性也更好,因为它根本就没有什么代码需要维护。你还可以创建自己的测试模块以便重复使用。没有代码还意味着在实际的测试开发过程中,用户可以更多地参与进来。
Jubula 支持 Swing、SWT/RCP/GEF 与 HTML 应用,可以用在 Windows、Linux/Unix 与 Mac 上。它包含了一个用于持续集成与脚本编写的命令行客户端。Jubula 基于客户端——服务器架构,你可以在 AUT 所在处运行 AUT(Application Under Test) Agent。请注意,AUT Agent 目前并不是 Eclipse Indigo 包的一部分,需要单独下载。
Jubula 是由 BREDEX GmbH 在去年 11 月份于 Eclipse 基金会发布的开源项目。它基于 GUIdancer 的核心组件,这是 2010 年 Eclipse 最佳商业开发者工具大奖的获得者。新闻如是说:
BREDEX GUIdancer 项目领导与执行董事 Achim L?rke 说到:之所以将核心的 GUIdancer 组件作为开源的 Eclipse 项目,很大一部分原因在于客户的需求。人们越来越多地选择开源这种模式,目的就是确保能够长久使用软件,同时又不必为开发过程的投资安全所羁绊。
Jubula 之外的另一个选择是 Google WindowTester 。WindowTester 支持 Swing 与 SWT 应用,但却不支持 HTML 应用。如果说 Jubula 是个拖拽式的工具,那么 WindowTester 就是个代码生成工具。它的工作方式是自动为 Swing 或 SWT 应用生成标准的 JUnit 测试。凭借 WindowTester,开发者可以轻松生成 GUI 测试,并且将这些测试集成到单元测试流程当中。
上手 Jubula 最简单的方式就是跟着 Jubula Cheat Sheets 来做,它位于 Eclipse Help 菜单中。Jubula Eclipse 插件目录中还有一些示例项目,可以帮助你快速起步。另一个颇具价值的资源就是 Eclipse Community Jubula 论坛。注意,目前 Jubula 站点上的文档非常少,很多现有的文档依旧使用的是 GUIdancer。
评论