Int*_*tor 6 bdd scala scalatest
在Scalatest中,我对使用Spec与WordSpec的优缺点有点不清楚.我认为javadoc提供了一定程度的WordSpec与FlatSpec的比较,但我不知道Spec和WordSpec.
如果您对这两种语法都感到满意,那么这将被视为"最佳实践"?
WordSpec是Spec的演变(如果有人认为BDD是TDD的进化)吗?或相反亦然?如果他们在这方面完全是平等的,为什么我会选择一个而不是另一个呢?
也许这是一个"宗教问题",但即使是每一方都必须至少有一些他们喜欢指出的优点和缺点.听到这些论点,我会很感兴趣.
如果这是常见问题解答,我提前道歉:我在搜索中找不到任何关于此比较的内容.
Bil*_*ers 15
Spec没有隐式转换,除了您通过Suite获得的默认转换,它将===放在所有内容上.WordSpec有一些隐式转换可以将字符串放在字符串之后,因此隐式转换冲突的风险略高.
Spec允许无限嵌套.WordSpec仅提供3级嵌套.
Spec为您提供了更多自由,可以自由地构建规范文本(尽管没有FreeSpec那么多的自由).WordSpec对于如何构建文本非常规范.
WordSpec比Spec更加DSLish.有些人更喜欢这样.
如果人们没有偏好,我会将它们指向Spec作为默认选项,因为默认情况下它具有较少的隐含,更多的自由,更少的DSL和更多的嵌套,但主要是这种选择是一个品味问题.