不需要编写测试脚本机制。
它可以是免费或商业的,但便宜且好用的比昂贵且好用的更好。
我的应用程序是使用Java SE 6编写的Rich-client应用程序。
Yoav
我同意Kettelerij的观点,Marathon是最好的选择。
它很容易与外部系统集成,比如Subversion和CruiseControl,因为所有的脚本都是可读的(Jython),而不是像大多数商业工具一样被锁定在某种需要导出的专有格式中。
它能够记录您选择的Jython或JRuby脚本,这些脚本本质上是Python和Ruby,可以访问Java API。非常容易理解。
对于高级测试人员,您可以使用不仅仅是名称,而是一组唯一属性的子集来识别要选择的GUI组件,例如
click('{Text: OK Enabled: true}')
...查找一个其getText()
为"OK"且isEnabled()
为"true"的组件。这使得脚本高度动态且更易于维护。
我几年前使用过Jemmy。现在我主要做Web应用程序,所以我在这个领域的经验可能有些陈旧了。:-)
http://www-01.ibm.com/software/awdtools/tester/functional/
我曾使用过旧版本来测试.NET表单应用程序(它也适用于Java应用程序,Windows原生应用程序,网页)。它失败了很多次,并且与.NET的集成不是很好。我不太推荐它用于此目的。
但是,人们普遍认为它在Java应用程序上工作得更好(RFT本身就是用Java制作的,而Java应用程序是最初的目标),尤其是在最近的版本中。
它是一款非常昂贵的应用程序。个人而言,除非没有其他选择,否则我不会再使用它。
Jameleon对于测试基于Web的应用程序非常有用。它结合了许多框架,提供了很大的灵活性,使您的方法在单个启动框架中得以实现。
我认为Jameleon没有截图功能,您可能将其与Selenium的截图和录制混淆了。Jameleon是一个纯脚本框架。