ruby - 如何停止 Minitest?

标签 ruby interrupt ruby-1.9 minitest

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

相比之下,在 Ruby 1.8 中的 test/unit 下,它会停止所有测试。

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..^C.E......^CE..^CE.......^C^C^CE.E.^CE^CE^C^CE^CE..^C.E...^CE.^CE..^CE...^C.E..^C.E..^C.E..^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]

最佳答案

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

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

关于ruby - 如何停止 Minitest?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6935466/

相关文章:

ruby - 获取 ruby 警告的堆栈跟踪信息

ruby - 我如何在 Ruby 1.9 中比较两个文件?

ruby-on-rails - 如何在 ruby​​ 中找到跨记录的最大属性?

ruby - 替换散列键的更好方法

c++ - 被信号中断的系统调用仍需完成

arduino - 不能在库中使用 attachInterrupt

c - 启用ATTINY1626 UART RX中断不触发ISR,如何解决?

ruby - 我应该升级到 Ruby 1.9 吗?

ruby-on-rails - 未定义的方法 `permit' 为 "titleofcoolstuff":String

ruby - 配置 Lambda 函数(Ruby) 来访问 Amazon RDS(mysql) 并执行 CRUD 操作