我是单元测试领域的新手;我现在使用单元测试只有两个月的时间。当我在Ruby中进行单元测试时,我目前遵循TDD风格,使用Test:: unit ::TestCase。我还读到了RSpec以及它是如何遵循BDD方法的。我也读过关于Shoulda的文章,它是两个框架之间的一个。我的问题是,我应该把我的时间花在RSpec或Shoulda上,还是应该坚持使用Test::Unit::TestCase?任何关于这个主题的意见都会受到欢迎。
发布于 2010-08-31 07:43:45
RSpec有很多很好的特性,不仅仅是语法。我会推荐它而不是Shoulda。
甚至连《首尔达》的作者Thoughtbot现在也在使用RSpec。Shoulda现在作为一个RSpec插件工作,它提供了许多有用的匹配器。
发布于 2010-08-31 23:50:05
应该称赞Test::Unit和RSpec,所以我不认为这是一个选择Shoulda而不是RSpec的问题,反之亦然。我在多个项目中使用了Shoulda,一些是用Test::Unit测试的,另一些是用RSpec测试的,它和这两个框架都能很好地协同工作。
我建议在您现有的Test::Unit项目中尝试使用Shoulda。它可以为您节省大量的按键操作,并使您的测试类更加整洁和一致。
正如Andrew Vit所说的那样,Shoulda团队越来越青睐RSpec的工作方式(参见http://robots.thoughtbot.com/post/701863189/shoulda-rails3-and-beyond)。RSpec值得一试,看看你会不会喜欢它。它并不适合每个人的口味,但我更喜欢它的语法、表现力、嵌套上下文、自定义匹配器和所有的酷!;-)
发布于 2011-03-10 19:27:48
没有非此即彼的选择。在最适合的地方使用不同的测试工具。
Shoulda是一个很棒的单行测试工具。它可以帮助你保持测试的整洁和简洁。如果你也喜欢这种风格,我也推荐斑马宝石。这是一个很好的编写单行测试的小工具。
https://stackoverflow.com/questions/3604564
复制相似问题