小编Ped*_*cia的帖子

如何在python中使用nosetest/unittest断言输出?

我正在为下一个函数编写测试:

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模块捕获输出?

python unit-testing python-nose nosetests

106
推荐指数
9
解决办法
5万
查看次数

标签 统计

nosetests ×1

python ×1

python-nose ×1

unit-testing ×1