unittest在命令行输出测试结果。你可能需要生成一个所有测试的执行结果作为报告或者把测试结果发给相关人员。给相关人员发送命令行日志不是一个明智的选择。他们需要格式更加友好的测试报告,既能够查看测试结果的概况,也能够深入查看报告细节。unittest没有相应的内置模块可以生成格式友好的报告,我们可以应用Wai Yip Tung编写的unittest的扩展HTMLTestRunner来实现。
我们将在测试中使用HTMLTestRunner来生成漂亮的测试报告。通过修改在本章前面涉及的测试套件文件来添加HTMLTestRunner支持。我们需要创建一个包含实际测试报告的输出文件,需要配置HTMLTestRunner选项和运行测试,具体如下。
import unittest
import HTMLTestRunner
import os
from searchtests import SearchTests
from homepagetests import HomePageTest
# get the directory path to output report file
dir = os.getcwd()
# get all tests from SearchProductTest and HomePageTest class
search_tests = unittest.TestLoader().loadTestsFromTestCase(SearchTests)
home_page_tests = unittest.TestLoader().loadTestsFromTestCase(HomePageTest)
# create a test suite combining search_test and home_page_test
smoke_tests = unittest.TestSuite([home_page_tests, search_tests])
# open the report file
outfile = open(dir + "\SmokeTestReport.html", "w")
# configure HTMLTestRunner options
runner = HTMLTestRunner.HTMLTestRunner(
stream=outfile,
title='Test Report',
description='Smoke Tests'
)
# run the suite using HTMLTestRunner
runner.run(smoke_tests)
执行该测试套件,HTMLTestRunner像unittest的默认测试执行器一样运行所有的测试。在用例执行的最后,它将生成测试报告文件。
以上内容为大家介绍了如何生成HTML格式的测试报告,本文由多测师亲自撰写,希望对大家有所帮助。了解更多软件测试相关知识:https://www.duoceshi.com/xwzx-hydt/
联系人:王女士
手机:17727591462
电话:0755-21072941
邮箱:hr@duoceshi.com
地址: 广东省深圳市龙华区龙华街道清湖和平路62号优鼎企创园D栋201室,202室