我又把HTMLTestRunner改了一下,支持Python3,添加echarts统计饼图
来源:互联网 发布:医药市场数据分析实例 编辑:程序博客网 时间:2024/05/16 05:26
之前用Bootstrap把HTMLTestRunner改的美观了一点,同时改成了中文的报告,但那个是基于Python2的,见这篇博文 selenium之 输出报告,对HTMLTestRunner进行样式调整后的示例。
这次呢,博主又给它改成了Python3的版本,同时给它加上了一个用echarts实现的统计饼图。效果如下:
经过评论区一位同学提醒,把用导入js文件的方式改成了用cdn的方式,不需要建文件夹放js文件了,生成html报告,联网就ok了
写一段代码做试验:
import unittestfrom utils.HTMLTestRunner_PY3 import HTMLTestRunnerclass TestHTMLTestRunnerPY3(unittest.TestCase): def test_py3_success(self): self.assertEqual(1+1, 2) def test_py3_fail(self): self.assertEqual(1+1, 3)class TestHTML(unittest.TestCase): def test_html_success(self): self.assertEqual(1+2, 3)class TestError(unittest.TestCase): def test_error(self): self.assertEqual(1/0, 1)if __name__ == '__main__': import os report = os.path.join('E:/PY/P2C_test/report/report.html') st = unittest.TestSuite() st.addTests([TestHTMLTestRunnerPY3('test_py3_success'), TestHTMLTestRunnerPY3('test_py3_fail'), TestHTML('test_html_success'), TestError('test_error')]) with open(report, 'wb') as f: runner = HTMLTestRunner(f, verbosity=2, title='示例测试报告', description='执行人:灰蓝') runner.run(st)
执行后生成报告,打开report.html,如图:
Python3的unittest中带了subTest,这是在Python2的unittest中没有的,需要引入unittest2才行。博主这次修改也为报告增加了subTest的支持。
示例修改如下:
import unittestfrom utils.HTMLTestRunner_PY3 import HTMLTestRunnerclass TestHTMLTestRunnerPY3(unittest.TestCase): """ 测试PY3 HTMLTESTRUNNER """ def test_py3_success(self): """ 此用例成功 """ self.assertEqual(1+1, 2) def test_py3_fail(self): """ 此用例失败 """ self.assertEqual(1+1, 3)class TestHTML(unittest.TestCase): """ 测试PY3 HTMLTESTRUNNER 2 """ def test_html_success(self): """ 此用例成功 """ for i in range(5): with self.subTest(data=i): # 注意这里subTest的用法 self.assertEqual(1+2, 3)class TestError(unittest.TestCase): """ 测试PY3 HTMLTESTRUNNER ERROR 3 """ def test_error(self): """ 此用例出错 """ self.assertEqual(1/0, 1)if __name__ == '__main__': import os report = os.path.join('E:/PY/P2C_test/report/report.html') st = unittest.TestSuite() st.addTests([TestHTMLTestRunnerPY3('test_py3_success'), TestHTMLTestRunnerPY3('test_py3_fail'), TestHTML('test_html_success'), TestError('test_error')]) with open(report, 'wb') as f: runner = HTMLTestRunner(f, verbosity=2, title='示例测试报告', description='执行人:灰蓝') runner.run(st)
修改后,我们在其中一个用例中使用了subTest,原来的一个用例会拆分成5个子用例执行,输出的报告如图:
很方便做真正的参数化。
喜欢的同学可以去 博主的github去fork ,之后博主可能继续做更多修改。
阅读全文
1 0
- 我又把HTMLTestRunner改了一下,支持Python3,添加echarts统计饼图
- 支持生成饼图的Python3.0的HTMLTestRunner
- 今天又把昨天那个打星星的程序改了一下!
- 谁能帮我改一下哪里错了
- 淘宝又改了又改了又改了
- 嗯嗯,算原创吧,把模板改了一下
- 在python3.X下修改了HTMLTestRunner.py
- 感谢大野猪,今天又娱乐了我一下:)
- 4.30 记录一下。我的blog又起死回生了
- 我把 Toolbar 转了一下变成了菜单
- 需求又改了
- 需求又改了
- 又看了一下
- 测试报告HTMLTestRunner,python3
- 关于socket用winform实现简单通信 大牛可绕道 初学者可以看看 我做的时候把客户端窗口隐藏了 大家可以自己改一下
- 轻松使用线程 1 zt -- 今天又把这篇找出来看了一下
- 今天又改了CRACKME
- CSDN 界面又改了
- 欢迎使用CSDN-markdown编辑器
- scala case class与class区别
- 如何部署 Calico 网络?- 每天5分钟玩转 Docker 容器技术(67)
- Android中Cursor类的概念和用法
- sql查询
- 我又把HTMLTestRunner改了一下,支持Python3,添加echarts统计饼图
- javascript打印时的css样式的控制
- [转]AutoEncoder原理
- python自然语言处理学习笔记2——基础语句
- BZOJ 3036 浅谈逆拓扑序递推期望转移方程
- 剑指offer-24:搜索二叉树的后序遍历
- 分析HashSet,HashMap源码,如何保证HashSet集合元素唯一性。
- mybatis generator
- 2章 信息的表示和处理