Java的BDD框架有什么区别? [英] What are the differences between BDD frameworks for Java?

查看:598
本文介绍了Java的BDD框架有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

每个适用于Java的行为驱动开发(BDD)框架的优缺点是什么?

What are the pros and cons of each Behavior Driven Development (BDD) framework for Java?

我发现其中一些这里,例如。

I've found some of them here, for example.

如果我已经使用了模拟库,那么使用BDD框架是否有意义(例如 Mockito )?

Does it make sense to use a BDD framework if I already use a mocking library (e.g. Mockito)?

推荐答案

我刚刚完成了三个针对Java的BDD框架的比较。显然,我的调查结果的使用期限相当短。

I've just finished comparing three BDD frameworks for Java. Obviously my findings have a fairly short use-by date.

Concordion

  • 非常灵活
  • 非常漂亮的报告输出
  • Nice插件框架
  • 记录不足。我不得不阅读消息来源来解决它(幸运的是它的质量非常好)。
  • 灯具似乎最终与html紧密相连。
  • Very flexible
  • Very pretty report output
  • Nice plugin framework
  • Poorly documented. I had to read the source to figure it out (luckily its extremely good quality).
  • Fixtures seemed likely to end up tightly coupled to the html.

EasyB

  • 非常浅的学习曲线(即使对于非Groovy开发人员)
  • 极其强大的DBUnit集成
  • 显然不支持参数(导致文本和代码之间非常模糊的故事或重复(编辑:实际上有,但它的文档非常隐藏。)
  • 故事和代码紧密耦合(同一个文件)
  • 非常基本的报告输出
  • 无法使IntelliJ插件工作
  • 非活动社区(Maven插件似乎已经被打破了三个月 - 绘制的代码示例不多)
  • Very shallow learning curve (even for non-Groovy Developers)
  • Extremely powerful DBUnit integration
  • Apparently no support for parameters (leads to either very vague stories or duplication between text and code (edit: actually there is but the documentation for it was very well hidden.)
  • Story and Code are very tightly coupled (same file)
  • Very basic report output
  • Couldn't get IntelliJ plugin to work
  • Inactive community (Maven plugin seems to have been broken for three months - not many code examples to draw on)

JBehave

  • 极其强大和灵活(例如通过故事构成减少锅炉板作为先决条件)
  • 广泛的(如果是碎片化的)文档和示例
  • 广泛的(如果overwh elming)支持不同的框架和环境
  • 故事文件与代码的完美分离
  • 看起来有一个非常活跃的社区,更多的例子和在网上讨论它。
  • 相当陡峭的学习曲线(比Concordion / EasyB花费的时间长3-4倍)
  • Extremely powerful and flexible (eg reduction of boiler-plate through composition of stories as pre-requisites)
  • Extensive (if fragmented) documentation and examples
  • Extensive (if overwhelming) support for different frameworks and environments
  • Excellent separation of story files from code
  • Looks to have a pretty active community and much more examples and discussion of it on web.
  • Quite a steep learning curve (took me 3-4 times longer to figure out than Concordion/EasyB)

我没有'我有机会尝试使用JDave的Cuke4Duke,但此时可能会推出JBehave。

I didn't have the chance to try out Cuke4Duke of JDave as I would have liked, but will probably push for JBehave at this time.

这篇关于Java的BDD框架有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆