IPython中的unittest输出

Nit*_*tin 8 ipython python-unittest

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

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

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

OK
Run Code Online (Sandbox Code Playgroud)

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

我使用以下命令来运行我的脚本,

suite = unittest.TestLoader().loadTestsFromTestCase(TestOutcome)
unittest.TextTestRunner(verbosity=2).run(suite)
Run Code Online (Sandbox Code Playgroud)

任何想法,如果这可能是由于IPython设置?

小智 10

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

suite = unittest.TestLoader().loadTestsFromTestCase(MyTest)
unittest.TextTestRunner(verbosity=1,stream=sys.stderr).run(suite)
Run Code Online (Sandbox Code Playgroud)