8

我有一个使用 unittest 测试模块的脚本。当我使用 python 控制台运行脚本时,我得到输出:

test_equal (__main__.TestOutcome) ... ok
test_win_amount (__main__.TestOutcome) ... ok

----------------------------------------------------------------------
Ran 2 tests in 0.000s

OK

但是,在使用 IPython 控制台运行相同的脚本时,我没有得到任何输出。

我正在使用以下内容来运行我的脚本,

suite = unittest.TestLoader().loadTestsFromTestCase(TestOutcome)
unittest.TextTestRunner(verbosity=2).run(suite)

如果这可能是由于 IPython 设置造成的,有什么想法吗?

4

1 回答 1

10

使用流参数调用 TextTestRunner 将使其在 IPython 中工作。这就是我运行测试的方式:

suite = unittest.TestLoader().loadTestsFromTestCase(MyTest)
unittest.TextTestRunner(verbosity=1,stream=sys.stderr).run(suite)
于 2014-05-19T21:04:17.933 回答