我有一个使用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设置?
答案 0 :(得分:10)
使用stream参数调用TextTestRunner将使其在IPython中工作。这就是我运行测试的方式:
suite = unittest.TestLoader().loadTestsFromTestCase(MyTest)
unittest.TextTestRunner(verbosity=1,stream=sys.stderr).run(suite)