我正在为下一个函数编写测试:
def foo():
print 'hello world!'
Run Code Online (Sandbox Code Playgroud)
所以,当我想测试这个函数时,代码将是这样的:
import sys
from foomodule import foo
def test_foo():
foo()
output = sys.stdout.getline().strip() # because stdout is an StringIO instance
assert output == 'hello world!'
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用-s参数运行nosetests,测试会崩溃.如何通过unittest或nose模块捕获输出?