当我想运行所有单元测试时,我运行 rake test:units。为了运行我所有的功能测试,我运行了 rake test:functionals。如果我想在一个文件中运行所有测试用例,我运行
ruby 测试/unit/username_test.rb
一些人一直告诉我应该运行 rake 而不是
rake test:units TEST=test/unit/username_test.rb
对于运行测试,他们说我应该总是运行 rake。我知道如果我正在测试我所有的单元测试,我应该运行 rake。但是,如果我正在测试的只是一个文件或文件中的一种特定测试方法怎么办?我还应该使用 rake 吗?两者之间有什么区别吗?在 ruby 上运行 rake 对我有什么好处吗?运行 ruby 而不是 rake 有什么缺点吗?
最佳答案
可悲的是,两者并不相同。与直接运行测试相比,在 rake 下运行测试可能会从不同的地方拉取东西(当你的系统上有多个版本的 gem 等时,问题更大)。
目的是在 rake 下运行的测试应该在与 rails 产生的环境相匹配的环境中;我无法证明它们的匹配程度,但我看到直接运行时通过但通过 rake 或 rails 运行时失败的测试(反之亦然)。
关于ruby-on-rails - ruby rails : Running Tests,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/686625/