python - 如何遍历 Python unittest runner 的所有成功测试结果?

标签 python python-unittest

之后:

import unittest 
loader = unittest.TestLoader()
tests = loader.discover('.')
testRunner = unittest.runner.TextTestRunner()
testResult = testRunner.run(tests)

我可以通过以下方式获取失败名称和消息列表:

for t in testResult.failures:
    print t[0].id()
    print t[1]

如何为成功做同样的事情?

我希望能够通过覆盖 TextTestRunner 中的某些内容来实现。什么是最简单的方法?

在 Python 2.7 上测试。

最佳答案

elethan 让我走上了正确的方向:https://stackoverflow.com/a/40613695/895245

这是我在使用 TextTestRunner(resultclass= 并添加一个不错的构造函数后得到的:

import unittest
from unittest.runner import TextTestResult

class TextTestResultWithSuccesses(TextTestResult):
    def __init__(self, *args, **kwargs):
        super(TextTestResultWithSuccesses, self).__init__(*args, **kwargs)
        self.successes = []
    def addSuccess(self, test):
        super(TextTestResultWithSuccesses, self).addSuccess(test)
        self.successes.append(test)

loader = unittest.TestLoader()
tests = loader.discover('.')
testRunner = unittest.runner.TextTestRunner(resultclass=TextTestResultWithSuccesses)
testResult = testRunner.run(tests)
for t in testResult.failures:
    print t[0].id()
    print t[1]
print
for t in testResult.errors:
    print t[0].id()
    print t[1]
print
for t in testResult.successes:
    print t.id()

关于python - 如何遍历 Python unittest runner 的所有成功测试结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40613177/

相关文章:

python - 修补从模拟类调用的类函数

Python unittest正确设置全局变量

Python - 套接字错误,地址正在使用

python - 如何在 python 中使用文本文件中的列表?

python - 如何在 Mac 上设置 Julia init 路径?

python - 如何测试立即运行的代码?

Python单元测试: Unit test the message passed in raised exception

python - 属性错误 : _mock_methods when extending MagicMock class

python - 如何使用 Python NetworkX 找到最长路径?

python - 等同于普通 python 中的 Ipython 运行命令