【问题标题】:Any better alternative to Groovy for Java integration testing? [closed]用于 Java 集成测试的 Groovy 有什么更好的替代品吗? [关闭]
【发布时间】:2012-12-08 07:13:25
【问题描述】:

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

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

我打算使用 Groovy 来实现这个目标。 Groovy 有没有更好的建议或替代方案?

编辑 1

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

【问题讨论】:

  • 如果你正在寻找更好的东西,我猜你对 Groovy 并不完全满意。它有什么问题?我个人一直在使用 Groovy 为 java 项目编写测试,这是一次很棒的体验。
  • 你试过Spock
  • @AndrewLogvinov:我还没有使用过 Groovy,但这是我的第一个选择。我只是想知道在我的案例中使用 Groovy 是否可以,或者我应该切换到其他东西?
  • @tim_yates:还没有。感谢您的建议。我应该深入研究一下。比X。
  • RSpec 和 JRuby 很好。如果您的 Java 程序员不想学习完全不同的语言,那么基于 Groovy 的测试框架可能更可取。对于 Java 开发人员来说,Groovy 比 JRuby 通常更容易过渡。您也可以查看我认为基于 Ruby 的 Cucumber。

标签: java testing scripting groovy integration-testing


【解决方案1】:

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

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

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

Groovy 还使您能够编写cool DSLs,它可以帮助您为非程序员实现一种编程语言,正如您所说的那样。

Groovy 中的 SQL 支持也很简单。您可以使用 groovy.sql 包类并快速开始使用它,或者您可以根据需要使用 JPA。

【讨论】:

    【解决方案2】:

    我会推荐RSpecJRUby

    RSpec 非常清晰、描述性强且易于理解,即使是非程序员也可以使用它。 使用 JRuby,您几乎可以完成使用 Java 可以做的所有事情。

    所以带有 JRuby 的 RSpec 听起来很适合您的要求。

    例子见http://patshaughnessy.net/2009/6/25/taming-the-beast-using-jruby-and-rspec-to-test-a-j2ee-application

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-03
      • 2011-08-20
      • 2021-12-02
      • 2010-12-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多