我在理论上很好地理解了RoR中单元和集成测试之间的差异。我正在使用rspec和capybara在我的网站上进行大量测试。我不明白你是如何进行不同的测试的?如果我做
bundle exec rspec
它将在我的所有spec文件夹(模型,控制器,视图,集成等)中运行我的所有规范。如果我想运行集成测试,它就像它一样简单吗?
bundle exec rspec spec/integration
我知道这些类型的测试在幕后存在一些差异。特别是这个问题(我也有)让我考虑单位与整合:How to test for a redirect with Rspec and Capybara
运行集成测试时Rails的作用有何不同?在上述问题中发布的解决方案是
rspec-rails请求规范不支持检查重定向, 但是在Rails集成测试中得到了支持。
那么如何让我的一个测试成为集成测试呢?这只是将它放在正确的spec文件夹中吗?
答案 0 :(得分:0)
据我所知,rspec是专为单元测试而设计的,因此您需要使用其他东西进行集成测试。消息似乎暗示Rails也可以进行集成测试。我没有任何单独使用rails测试的经验或知识,但我知道黄瓜宝石非常适合集成测试。
它拥有自己的特定领域语言以及您需要习惯的其他怪癖,但它应具备您正在寻找的功能。