如果没有JRuby / gem,是否可以在Java中运行Cucumber?

时间:2010-10-29 14:01:07

标签: java ruby cucumber jruby

我是Cucumber,JRuby,Gems的新手以及它是如何运作的。

我喜欢用简单的英文写下测试用例的想法,但我并不热衷于安装很多新工具(我真的很喜欢Java),只是为了让Cucumber运行起来。

所以我有几个问题。

1)我是否需要安装JRuby / Ruby才能在Java中使用Cucumber?没办法避免这个?

2)如果没有,是否有替代测试工具,类似于Cucumber,开箱即用的Java工作?

为了让Cucumber /类似工具正常工作,我有哪些替代方法可以最小化新工具?

5 个答案:

答案 0 :(得分:8)

Cucumber-JVM正是您要找的。

答案 1 :(得分:4)

Cucumber的成熟纯Java替代品是JBehave

另外Aslak Hellesoy(Cucumber的创建者)承诺在2011年将一些本地Java版本的Cucumber发布(见CukeUp keynote

答案 2 :(得分:4)

我比较了Cucumber,Cucumber-JVM和JBehave。它们都用于编写基于功能(Cucumber,Cucumber-JVM)或故事的验收测试。

Cucumber的主要缺点是,在纯Java环境中通过Cuke4Duke Maven插件使用它时会很脆弱,因为它需要维护其底层的Ruby(gem)基础设施。它也相对较慢并且无法直接调试 - 您需要连接远程调试器。

JBehave是一种非常成熟,纯粹的Java替代Cucumber。它的输出并不像Cucumber那么漂亮,但它有很好的记录,易于使用和快速。有对JUnit的原生支持。

截至2011年12月,您现在可以另外使用名为Cucumber-JVM的纯Java版Cucumber。它与JBehave一样快速和易用,并且具有原生JUnit支持。不幸的是,它没有任何漂亮的基于HTML的结果输出,甚至没有JBehave的基本产品,尽管这应该在未来几个月内修复。它也缺乏文件。它相对于JBehave的主要优势是支持功能而不是故事。

答案 3 :(得分:0)

结帐cuke4duke。它是JVM的黄瓜,不需要Ruby。

答案 4 :(得分:0)

如果你喜欢用简单的英语写测试的想法,那么Twist是你最好的选择。底层测试代码将在java中。