unittest自动化测试的可视化报告模板

BeautifulReport的Python项目详细描述


BeautifulReport

一个基于unittest.TestResult模块实现的测试用例模板, 可把测试中的结果通过BeautifulReport整合成一个可视化的报表.

如何使用它?

>>> pip install BeautifulReport
importunittestfromBeautifulReportimportBeautifulReportif__name__=='__main__':test_suite=unittest.defaultTestLoader.discover('./tests',pattern='test*.py')result=BeautifulReport(test_suite)result.report(filename='测试报告',description='测试deafult报告',report_dir='report',theme='theme_default')

Report API简介

  • BeautifulReport.report

    • report (
      filename -> 测试报告名称, 如果不指定默认文件名为report.html
      description -> 测试报告用例名称展示
      report_dir='.' -> 报告文件写入路径
      theme='theme_default' -> 报告主题样式 theme_default theme_cyan theme_candy theme_memories
      )
  • BeautifulReport.add_test_img

如果使用报告过程中需要把测试报告的截图放在报告中, 可以使用add_test_img方法

  • add_test_img ( *pargs )

可以在测试用例上挂载一个装饰器, 实例内容如下

  • 默认存放的图片路径是img, 需要在当前测试项目的启动路径下, 创建一个img文件夹
  • 传递给装饰器的图片,在运行测试前可以不存在, 运行测试之后生成即可.
  • 当文件在报告中展示后, 想要看到原图, 可以点击报告中的缩略图查看完整的截图
importunittestfromBeautifulReportimportBeautifulReportclassUnittestCaseSecond(unittest.TestCase):""" 测试代码生成与loader 测试数据"""deftest_equal(self):"""        test 1==1        :return:        """importtimetime.sleep(1)self.assertTrue(1==1)@BeautifulReport.add_test_img('测试报告.png')deftest_is_none(self):"""        test None object        :return:        """save_some_img('测试报告.png')self.assertIsNone(None)
  • 运行sample之后生成如下报告

image

  • 主题样式

image

感谢原作者 TesterlifeRaymond 的代码贡献,本人在原基础上修复了部分bug并增加了主题样式的自定义

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
由ScheduledExecutorService触发的java同步线程   java如何兼容OpenJRE/JDK1.8。x与OracleJRE/jdk1.8。十、   可重用代码的静态最佳实践Java   TestsNG中有多个测试的java事务问题   排序为什么我的气泡排序不起作用?JAVA   JavaSpring与动态数据源   java如何在Mule Dataweave转换中使用正则表达式替换特殊字符?   java是否单独调用服务器以在jsp文件的img标记中呈现图像?   java基本语法,用于在函数中将扫描程序对象作为参数传递   java基于两列在Hibernate中填充外部集合   java安装eclipse时,我在文件夹中找不到jdk   kotlin Java 11`HttpClient`正在下载但未下载?(负内容长度)   文件Java无法读取Ö(特殊字符)并打印它   javars+Spring   java TestNg Selenide。没有webdriver绑定到当前线程   java我应该如何对数据库建模,以便数据库中的每个学生实体都有一个与每个课程实体相关的分数?   java GoogleAccountCredential getSelectedAccountName()在设置并实现权限后返回null   java从ngclick调用servlet中的函数   java NetBeans JTable不带滚动窗格,保留标题   java Drools从会话中获取相同类型的对象