是否有更好的Groovy for Java集成测试替代方案?

时间:2012-12-08 07:13:25

标签: java testing scripting groovy integration-testing

我打算使用其编程接口测试我的基于Java的Web应用程序。为此,我打算使用他们的RMI / WebService接口调用我的会话bean,并检查他们支持的服务是否正确。为此,我需要一种脚本语言:

  • 调用我的RMI / WebService接口
  • 执行SQL语句(例如,首先清理数据库)
  • 有一个简单的流量控制(循环,条件等)
  • 容易理解。我可能会要求我的非程序员编写测试脚本

我打算将Groovy用于此目标。 Groovy有更好的建议或替代方案吗?

修改1

在答案中提到的其他Groovy替代品是JRuby和RSpec。网上有没有比较它们?

2 个答案:

答案 0 :(得分:6)

我认为Groovy是您可以用于测试的最佳选择。 Groovy与Java的集成是无缝的,因此调用方法,库和类似的东西通常运行顺畅。

开始使用Groovy的公司通常也会开始使用它进行测试,然后在生产代码中使用它。

正如@tim_yates所说,Spock是一个用于测试的Groovy框架,也是一个很棒的框架。你也可以毫无问题地使用JUnit/EasyMock/TestNG/Whatever,Groovy本身带有GroovyTestCase(基于JUnit)来完成工作。

Groovy还允许您编写cool DSLs,它可以帮助您为非程序员实现编程语言,如您所说。

Groovy中的SQL支持也很简单。您可以使用groovy.sql包类并快速开始使用它,或者如果您愿意,可以使用JPA。

答案 1 :(得分:1)

我建议RSpec使用JRUby

RSpec非常清晰,描述性和易于理解,甚至非程序员也可以使用它。 使用JRuby,您几乎可以使用Java完成所有操作。

因此,使用JRuby的RSpec听起来非常符合您的要求。

有关示例,请参阅http://patshaughnessy.net/2009/6/25/taming-the-beast-using-jruby-and-rspec-to-test-a-j2ee-application