Python 天天美味(37) - 让python的unittest像gtest一样输出
Python自带的unittest已经很简单易用了,不过我一直不喜欢的是它的命令行输出,格式显得有点乱。而我比较喜欢的是gtest的命令行输出格式,用不同的颜色进行标识,整齐划一,非常明了。于是,我扩展一下Python的unittest模块,让它也能输出和gtest一样好看的命令行结果。 首先,我们先来看看unittest默认的命令行输出结果。这里,我先随便写两个测试案例,让其中一个通过,另外一个不通过,然后查看一下测试结果。 import unitest class FooTest(unittest.TestCase): def setUp(self): self.a = 1 def testPass(self): self.a = self.a + 1 self.assertEqual( 2 , self.a) def testFail(self): self.a = self.a + 1 self.assertEqual( 3 , self.a) main函数,调用unittest自己的TextTestRunner: if __name__ == ' __main__ ' : unittest.main() 输出的结果: 有点凌乱(当然,可能你并不觉得),好的,接下来开始实现一个自定义的TestRunner,让unittest输出和gtest一样,使用不同的颜色。