项目作者: Rain0193

项目描述 :
HTMLReport是一个单元测试测试运行器,可以将测试结果保存在Html文件中,用于人性化的结果显示。仅支持Python 3.x
高级语言: Python
项目地址: git://github.com/Rain0193/HTMLReport.git
创建时间: 2018-05-14T16:49:10Z
项目社区:https://github.com/Rain0193/HTMLReport

开源协议:MIT License

下载


HTMLReport

HTMLReport是一个单元测试测试运行器,可以将测试结果保存在 Html 文件中,用于人性化的结果显示。

仅支持Python 3.x

安装

要安装 HTMLReport,请在终端中运行此命令

  1. pip install HTMLReport

这是安装HTMLReport的首选方法,因为它将始终安装最新的稳定版本。如果您没有安装pip,则该Python安装指南可以指导您完成该过程。

使用方法

  1. import unittest
  2. import HTMLReport
  3. # 测试套件
  4. suite = unittest.TestSuite()
  5. # 测试用例加载器
  6. loader = unittest.TestLoader()
  7. # 把测试用例加载到测试套件中
  8. suite.addTests(loader.loadTestsFromTestCase(TestStringMethods))
  9. # 测试用例执行器
  10. runner = HTMLReport.TestRunner(report_file_name='test', # 报告文件名,如果未赋值,将采用“test+时间戳”
  11. output_path='report', # 保存文件夹名,默认“report”
  12. title='测试报告', # 报告标题,默认“测试报告”
  13. description='无测试描述', # 报告描述,默认“测试描述”
  14. thread_count=1, # 并发线程数量(无序执行测试),默认数量 1
  15. thread_start_wait=3, # 各线程启动延迟,默认 0 s
  16. sequential_execution=False, # 是否按照套件添加(addTests)顺序执行,
  17. # 会等待一个addTests执行完成,再执行下一个,默认 False
  18. # 如果用例中存在 tearDownClass ,建议设置为True,
  19. # 否则 tearDownClass 将会在所有用例线程执行完后才会执行。
  20. # lang='en'
  21. lang='cn' # 支持中文与英文,默认中文
  22. )
  23. # 执行测试用例套件
  24. runner.run(suite)

为测试报告中添加过程日志,在多线程下,在报告中会分别记录每个线程的日志,同时会产生与测试报告同名的测试 log 文件。

  1. from HTMLReport import logger
  2. logger().info("测试")
  3. logger().debug("测试")
  4. logger().warning("测试")
  5. logger().error("测试")
  6. logger().critical("测试")

为测试报告添加图片信息,请将图片信息编码为 base64 编码。

如采用的是 selenium 截屏,请使用 get_screenshot_as_base64() 方法获取 base64 encoded string 作为参数传入。

本库会自动将图片保存在报告路径下的images目录下,并嵌入到报告中。

  1. import base64
  2. from HTMLReport import AddImage
  3. with open("baidu.png", 'rb') as f:
  4. image = base64.b64encode(f.read())
  5. AddImage(image)

如果您有其他的需求,请发邮件给我:liushilive@outlook.com , 祝您使用愉快!

Links: