单元测试彩色输出
我在用 unittest
(其实是 unittest2
)来做Python的测试,同时还用 Python Mock 来模拟一些对象,还有 nose 来一次性运行所有的测试。
我希望能一眼看出哪些测试通过了,哪些测试失败了,像用绿色和红色的条来显示那样。有没有办法让unittest的输出变成有颜色的呢?
(现在换测试框架不太现实,而且我其实挺喜欢unittest的)
9 个回答
21
我在使用nosetests和rednose时取得了不错的效果。写这段话的时候,这个工具还在维护中。
31
我今天发布了一个新工具,它可以让你的 unittest
测试结果显示彩色输出,这个工具的使用方法和 robert的回答 很相似。我把它叫做 colour-runner
。
要安装这个工具,你只需要运行以下命令:
pip install colour-runner
然后,在你原本使用 unittest.TextTestRunner
的地方,改用 colour_runner.runner.ColourTextTestRunner
。
你可以看看 设置 verbosity=1
时的效果……还有 verbosity=2
的效果。
13
在Python 2.x版本中,你可以试试pyrg这个库。不过在Python 3中就不行了。