Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一段代码,如:
output = `shell-command-to-run` unless $?.success? raise "Failure running shell command!" end
我已经模拟了反引号方法以防止外部 shell 命令在我的规范期间运行,但我还没有找到一种方法来设置$?全局变量来行使规范的失败方面。
$?
也许您应该有一个脚本来返回您期望发现的各种错误,以便您可以测试各种条件。例如:
#!/usr/bin/env ruby exit(ARGV[0].to_i)
然后,您可以传入要捕获的退出代码。
无需模拟调用,您只需完全运行一个不同的脚本来验证它是否正确处理错误。