我如何停止Minitest?

时间:2011-08-04 02:18:41

标签: ruby interrupt ruby-1.9 minitest

在Ruby 1.9.1中,我发现 ctrl + c 只能杀死一个单元测试,你无法停止运行整个测试程序方式。

相比之下,在Ruby 1.8的测试/单元下,它会停止所有测试。

1.9.1下的示例进度条:

ruby1.9.1 test/ts_foo.rb 
Loaded suite test/ts_foo
Started
  

.............................. ^ CF ............... .................................................. ............. ^ CE .................. ^ C ^ C ^ CE..E .. ^ C ^ C ^ C ^ ^ CEE CE ^ ^ CE CE CE ^ ^ C ^ C ^ ^ CEE CE ^ ^ CE CE ^ ^ CE CE ^ CE .. ^ CE ... ^ C..E .. ^ CE ..... ^ CE .. ^ CE ....... ^ C ^ C ^ ^ CE.E. CE ^ CE ^ C ^ ^ CE CE .. ^ CE .. ^ CE。^ CE .. ^ CE ... ^ CE。^ CE。^ CE。^ CE ... ^ CE .... ^ CE ..............

在1.8.7之下:

$ ruby test/ts_foo.rb 
Loaded suite test/ts_foo
Started
  

............................................... ......... ^ C

我在Ubuntu Karmic Koala上运行它,Ruby版本是

$ ruby1.9.1 --version
ruby 1.9.1p243 (2009-07-16 revision 24175) [x86_64-linux]
$ ruby --version
ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]

1 个答案:

答案 0 :(得分:2)

看来ruby-1.9.1包含了一个非常古老的minitest版本。 这种(不寻常的)行为已经修复了很久以前:minitest commit

解决方案可能是切换到更高版本的1.9版本(ruby-1.9.2的minitest确实包含该修复)或升级本地ruby-1.9.1 minitest(手动或希望只安装最新的minitest gem)。 / p>