RSpec失败套件,单独通过测试

时间:2013-02-07 16:54:29

标签: ruby rspec

我的spec文件夹中有两个测试,当我单独运行它们时它们都是绿色的:

rspec spec\temp_stab_target_spec.rb   
32 examples, 0 failures

rspec spec\mock_spec.rb
10 examples, 0 failures

但当我运行所有这些时:

rspec spec
42 examples, 32 failures  

spec\mock_spec.rb的所有内容都在传递,spec\temp_stab_target_spec.rb的所有内容都不是

我做了一些研究,发现我遇到了与讨论here相同的问题。当我检查ARGV时,它包含spec。我尝试使用before(:each) { ARGV.clear },但没有用。

另外,当我检查ARGV刚刚运行rspec spec\temp_stab_target_spec.rb时,它是空的。

有人可以解释发生了什么或帮助我解决这个问题吗?我将扩展套件,我希望能够立即运行所有测试,而不是单独运行。

如果相关,我正在运行ruby 1.8.7 (2012-02-08 patchlevel 358) [i386-mingw32]rspec 2.12.2

提前致谢

1 个答案:

答案 0 :(得分:0)

不要在测试中使用对ARGV的引用!

将这样的东西输入到您正在测试的代码中。使用构造函数,工厂方法或任何有助于从难以测试的部分中解释代码的方法。