什么是报告框架?

时间:2018-04-03 23:19:46

标签: python unit-testing python-unittest

阅读unittest并说:

  

unittest单元测试框架最初受JUnit启发,与其他语言的主要单元测试框架具有相似的风格。它支持测试自动化,共享测试的设置和关闭代码,将测试集合到集合中,以及从报告框架中独立测试。

(重点是我的)

我当然用谷歌搜索了什么是报告框架'期待一个SO问题,但没有看到一个问题。那么,SO,这个背景下的报告框架是什么?

1 个答案:

答案 0 :(得分:1)

报告框架是负责报告测试结果的测试系统的一部分。当你run a test时:

import unittest

class MyTest(unittest.TestCase):
    def test_good(self):
        pass
    def test_bad(self):
        self.assertTrue(False)

if __name__ == '__main__':
    unittest.main()

并查看输出:

F.
======================================================================
FAIL: test_bad (__main__.MyTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "./prog.py", line 7, in test_bad
AssertionError: False is not true

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

FAILED (failures=1)

报告框架获取有关通过,失败和异常的原始数据,并生成您看到的输出。

unittest将其与直接负责测试功能的系统部分以及负责收集和运行测试的系统部分分开。运行TestCase会生成TestResult,报告系统可以使用该Sprint Table来确定要报告的内容,而报告系统无需知道如何实际测试内容。可以自定义或替换报告代码,而无需重写测试代码。