我一直在使用MiniTest学习TDD / BDD。我想弄清楚我的代码的哪些部分应该使用MiniTest :: Unit :: TestCase进行测试,哪些部分应该使用MiniTest :: Spec进行测试。
我理解单元测试和集成测试之间的区别,我从Web上的示例中无法理解的是,TestCase和Spec是否都是单元测试,或者TestCase是否用于单元测试和用于集成测试的规范?
我应该将我的快速单元测试保存在MiniTest :: Unit :: TestCase类和更长的集成测试中,这些测试更常用于描述MiniTest :: Spec期望中的功能吗?它是否重要,或者是个人偏好的问题?
答案 0 :(得分:4)
我是否使用MiniTest::Unit(assertions)与MiniTest::Spec,取决于我为谁写的。
对于我自己编写的代码,没有任何“客户”要求,我会使用MiniTest :: Unit。这些测试对我来说很有意义,阅读它们很简洁。
如果我正在为有需求列表的客户编写代码,我会使用MiniTest :: Spec。规范文件对于非程序员来说更具可读性。
注意:MiniTest去年进行了大修,因此一些模块名称发生了变化但想法相同,MiniTest支持更简洁,更冗长的单元测试编写方式。