Groovy 斯波克vs菲特尼斯

Groovy 斯波克vs菲特尼斯,groovy,automated-tests,fitnesse,spock,Groovy,Automated Tests,Fitnesse,Spock,我一直在调查斯波克,我有过与菲特内斯合作的经验。我想知道如果人们似乎在解决相同或相似的问题空间,他们会如何选择一个而不是另一个 同样对于那些一直在使用Spock或其他groovy代码进行测试的人来说,您是否看到任何明显的性能下降?测试应该会立即提供反馈——正如我们所知,如果测试运行时间较长,开发人员往往会较少地运行测试——因此我想知道测试执行速度的降低是否对现实世界产生了任何影响 谢谢我是个不合身的人,所以请对我说的话持保留态度。在我看来,FitNesse试图做的是提供一个独立于编程语言的环境来

我一直在调查斯波克,我有过与菲特内斯合作的经验。我想知道如果人们似乎在解决相同或相似的问题空间,他们会如何选择一个而不是另一个

同样对于那些一直在使用Spock或其他groovy代码进行测试的人来说,您是否看到任何明显的性能下降?测试应该会立即提供反馈——正如我们所知,如果测试运行时间较长,开发人员往往会较少地运行测试——因此我想知道测试执行速度的降低是否对现实世界产生了任何影响


谢谢

我是个不合身的人,所以请对我说的话持保留态度。在我看来,FitNesse试图做的是提供一个独立于编程语言的环境来指定测试。他们使用它与程序员有一个更直观的界面。在Spock中,Groovy ast转换用于将表转换为Groovy程序

由于您基本上停留在编程语言中,因此在Spock中更容易实现更复杂的测试设置。因此,您似乎经常不得不在FitNesse中编写夹具代码

我个人不需要一个测试执行按钮,我喜欢直接的方法。我喜欢不必使用更多的类,只需启用测试,我喜欢直接查看代码。例如,我只想从命令行执行测试,而不是从web界面执行测试。这当然在FitNesse中也是可能的,但是FitNesse试图给用户的整个视觉效果对我来说只是压舱物。这就是为什么我会选择斯波克而不是菲特内斯

语言无关方法的优点当然是,许多测试规范可以用于Java和.Net。所以,如果这是你的一个要求,你可能想判断不同。对我来说通常不是这样


至于性能,我不会太担心这一部分。

我认为性能没有明显下降。我发现Spock改变了我编写测试的方式,而不是为了更好地编写测试(使用给定的/when等的结构)。我也认为斯波克的使用和接受更广泛。我没有使用FitNesse,但我可以推荐斯波克。这是一种非常有表现力的编写易读测试的方式。这些测试执行得很快。在性能方面没有显著影响。另请参见