哪个是最好的Java GUI测试工具?

8
我正在寻找一个Java GUI测试工具,可以通过记录我的GUI操作(按下按钮、关闭窗口等)来创建测试。
不需要编写测试脚本机制。
它可以是免费或商业的,但便宜且好用的比昂贵且好用的更好。
我的应用程序是使用Java SE 6编写的Rich-client应用程序。
Yoav
9个回答

6
如果是一个Swing应用程序,您可以查看Marathon

你有没有相关经验? - Yoav Schwartz

2

我同意Kettelerij的观点,Marathon是最好的选择。

  • 它很容易与外部系统集成,比如Subversion和CruiseControl,因为所有的脚本都是可读的(Jython),而不是像大多数商业工具一样被锁定在某种需要导出的专有格式中。

  • 它能够记录您选择的Jython或JRuby脚本,这些脚本本质上是Python和Ruby,可以访问Java API。非常容易理解。

  • 对于高级测试人员,您可以使用不仅仅是名称,而是一组唯一属性的子集来识别要选择的GUI组件,例如

    click('{Text: OK Enabled: true}')

...查找一个其getText()为"OK"且isEnabled()为"true"的组件。这使得脚本高度动态且更易于维护。


1

我几年前使用过Jemmy。现在我主要做Web应用程序,所以我在这个领域的经验可能有些陈旧了。:-)


Jemmy是一个稳定的框架,例如被Oracle用于测试NetBeans、JavaFX和其他大型项目。 - Sergey Grinev
链接已失效:请尝试访问http://jemmy.java.net/。 - Niels van Reijmersdal
http://jemmy.java.net/ - SuperStar

1
一个编写测试的脚本机制是非常必要的。 是的,它是必要的。纯粹的捕捉/重放在实践中根本行不通,你总是不得不编辑生成的脚本。而你往往会在不充分的环境中花费大量时间来做到这一点,这样就无法节省任何时间,与专门为高效脚本编写量身定制的纯脚本解决方案相比。

0
我对Quick Test Pro印象深刻。它是来自HP的付费软件,但它能够访问大多数工具无法处理的一些软件。它具有一些数据功能,以便可以使用不同的数据输入多次运行测试。它可以通过VB进行脚本编写,因此大多数测试人员/开发人员都能够使用它。最近我一直在使用它在许多机器上执行测试,用于性能测试。

0
尝试使用QEngine,它可以记录和回放操作。还具有脚本选项。

0
您还可以使用IBM的Rational Functional Tester:

http://www-01.ibm.com/software/awdtools/tester/functional/

我曾使用过旧版本来测试.NET表单应用程序(它也适用于Java应用程序,Windows原生应用程序,网页)。它失败了很多次,并且与.NET的集成不是很好。我不太推荐它用于此目的

但是,人们普遍认为它在Java应用程序上工作得更好(RFT本身就是用Java制作的,而Java应用程序是最初的目标),尤其是在最近的版本中。

它是一款非常昂贵的应用程序。个人而言,除非没有其他选择,否则我不会再使用它。


0

Jameleon对于测试基于Web的应用程序非常有用。它结合了许多框架,提供了很大的灵活性,使您的方法在单个启动框架中得以实现。


0

我认为Jameleon没有截图功能,您可能将其与Selenium的截图和录制混淆了。Jameleon是一个纯脚本框架。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接