unittest测试框架详谈及实操(五)

测试报告——生成HTML格式的测试报告

  前面的实例输出的所有测试结果都是以命令行日志的方式展示,不止于难看,但也不适合直接把那样的测试结果截图发给相关人员,尤其是领导。这时需要更加友好的测试结果,既能够查看测试结果的概况,又能深入查看报告细节。虽然unittest目前没有相应的内置模块可以生成格式友好的报告,但是我可以应用unittest的扩展库HTMLTestRunner来实现。

  如果想获取更多关于HTMLTestRunner的信息,可以参考;

  https://pypi.org/project/HTMLTestRunner

  下面将修改前面涉及的测试套件并添加HTMLTestRunner支持。主要需要创建一个包含实际测试报告的输出文件,并配置HTMLTestRunner选择。代码如下:

import unittest
import HTMLTestRunner
from searchtests import BaiduSearchTest
from homepagetests import BaiduHomePageTest

#get the directory path to report file
dir = './'     #current script directory

search_tests = unittest.TestLoader().loadTestsFromTestCase(BaiduSearchTest)
home_page_tests = unittest.TestLoader().loadTestsFromTestCase(BaiduHomePageTest)

test_suite = unittest.TestSuite([home_page_tests, search_tests])

#open the report file
report_file = open(dir + "BaiduTestReport.html", "wb")

#configure HTMLTestRunner options
runner = HTMLTestRunner.HTMLTestRunner(stream = report_file,
                                       title = 'Test Report',
                                       description = 'Test Suite',
                                       verbosity=2)

#run test suite using HTMLTestRunner
runner.run(test_suite)

  执行该测试套件,HTMLTestRunner像unittest一样运行所有的测试。最后生成测试报告文件,如下图所示:

   更多关于HTMLTestRunner信息可以参考:https://pypi.org/project/HTMLTestRunner/

posted @ 2018-04-25 16:50  菜鸟可米  阅读(535)  评论(0编辑  收藏  举报
jQuery火箭图标返回顶部代码