在Ruby on Rails上,当另一个正在破坏时如何运行一个功能测试?

nop*_*ole 6 testing ruby-on-rails functional-testing

假设您添加了一个控制器和操作(例如:) story/index,并希望通过执行功能测试

rake test:functionals
Run Code Online (Sandbox Code Playgroud)

然后你发现你的同事正在进行的项目的另一部分实际上在你的功能测试开始之前在更早的地方(另一个控制器/动作)打破了测试.

在这种情况下,你可以只运行一个功能测试,这是你的吗?

Jon*_*röm 10

明智的屁股答案
如果您的同事打破了测试,那么他应该修复测试,否则他不应该将代码提交给回购.这是我们在我所从事的项目中通常拥有的主要原则.

不错的答案
试试这个

rake test:functionals TEST=test/functional/xy_test.rb
Run Code Online (Sandbox Code Playgroud)

或者这个
运行一个没有rake的测试,但显式$ -loadpath也在这里工作"ruby -I directory"指定$ loadpath.否则你将无法加载测试环境并且"require test_helper"失败!

ruby -I test test/functional/xy_test.rb
Run Code Online (Sandbox Code Playgroud)