python之单元测试_生成测试报告
(1)HTMLTestRunner.py的下载路径:https://pan.baidu.com/s/1Yk2E8d8bIo5_rmpussOE9Q 提取码:0jae
(2)HTMLTestRunner.py的存放到python安装的路径的lib文件夹下面,如下图所示:

(3)以加减乘除的计算为例,创建三个类:(1)mathMethod.py(2)testMathMethod.py(3)testSuit.py

(1)mathMethod.py
class MathMethod:
def __init__(self, a, b):
self.a = a
self.b = b
def add(self):
return self.a+self.b
def sub(self):
return self.a-self.b
def chengfa(self):
return self.a*self.b
def div(self):
return self.a/self.b
(2)testMathMethod.py
import unittest
from 单元测试.mathMethod import MathMethod # 对mathmethod进行单元测试
# TestCase
# 下面都是测试用例
class TestMathMethod(unittest.TestCase):
def setUp(self):
print("开始测试啦!") def test_add(self):
try:
t = MathMethod(5, 4).add()
self.assertEqual(t, 9, "出错啦")
print(t)
except AssertionError as e:
print("单元测试出错啦,错误是%s")
raise e def test_sub(self):
try:
t = MathMethod(9, 6).sub()
self.assertEqual(t, 3, "出错啦")
print(t)
except AssertionError as e:
print("单元测试出错啦,错误是%s")
raise e def test_chengfa(self): try:
t = MathMethod(5, 5).chengfa()
self.assertEqual(t, 25, "出错啦")
print(t)
except AssertionError as e:
print("单元测试出错啦,错误是%s")
raise e def test_div(self):
try:
t = MathMethod(25, 5).div()
self.assertEqual(t, 5, "出错啦")
print(t)
except AssertionError as e:
print("单元测试出错啦,错误是%s")
raise e def tearDown(self):
print("测试结束了!") (3)testSuit.py
import unittest
import time
from 单元测试.testMathMethod import TestMathMethod
import HTMLTestRunner # 作用把所有测试用例集合起来,放在一个测试集里面。
suite = unittest.TestSuite()
suite.addTest(TestMathMethod("test_add"))
suite.addTest(TestMathMethod("test_sub"))
suite.addTest(TestMathMethod("test_chengfa"))
suite.addTest(TestMathMethod("test_div"))
now = time.strftime('%Y-%m-%d_%H_%M_%S')
# 执行测试集
filePath = "pyResult" + now + ".html"
fp = open(filePath, 'wb')
# 生成报告的title,描述
runner = HTMLTestRunner.HTMLTestRunner(stream=fp, title="2019-1-6 test report",
verbosity=2) # 执行测试用例出结果
runner.run(suite)
fp.close()
(4)运行testSuit生成测试报告:

请大家支持原创,尊重原创,如要转载,请注明出处:“转载自:https://www.cnblogs.com/xiaoyunyun100fen/”:谢谢!!如有疑问,欢迎大家留言区艾特我哈。
python之单元测试_生成测试报告的更多相关文章
- python使用 HTMLTestRunner.py生成测试报告
HTMLTestRunner.py python 2版本 下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 使用时,先建立一个”PyDe ...
- Python+Selenium+Unittest+HTMLTestRunner生成测试报告+发送至邮箱,记一次完整的cnblog登录测试示例,
测试思路:单个测试集.单个测试汇成多个测试集.运行测试集.生成测试报告.发送至邮箱. 第一步:建立单个测试集,以cnblog登录为例. 测试用例: cnblog的登录测试,简单分下面几种情况:(1)用 ...
- python使用HTMLTestRunner.py生成测试报告
这里我使用的是python selenium webdriver环境,浏览器驱动安装见selenium 1.下载HTMLTestRunner.py:http://tungwaiyip.info/sof ...
- Karma +Jasmine+ require JS进行单元测试并生成测试报告、代码覆盖率报告
1. 关于Karma Karma是一个基于Node.js的JavaScript测试执行过程管理工具(Test Runner). 该工具可用于测试所有主流Web浏览器,也可集成到CI(Continuou ...
- python自动化之(自动生成测试报告)
前言: 用python执行测试脚本, 测试报告是记录我们测试过程的问题, 方便我们对整个测试过程的把控. 这里引用的是别人写好的模板, 我们拿过来用就OK, 能力强者可自行编写模板 测试报告图模板: ...
- 基于python xlsxwriter、xlrd 生成测试报告
import xlsxwriter,xlrd ''' 思路: 1.获取数据 2.整合数据 3.写入文件 ''' #筛选 def filt(category,table,filt_name=None,r ...
- Python学习笔记_生成验证码
import random def verification_code(): num = [str(x) for x in range(10)] # 列表生成器0-9 upper = [chr(x) ...
- python之单元测试框架—unittest
一. 什么是单元测试?单元测试的对象是什么? 1: 什么是单元测试? 按照定义,单元测试就是对单个模块或者单个类或者单个函数进行测试,一般是开发做的,按照阶段分,一般就是单元测试.集成测试.系统测试. ...
- Python单元测试框架之pytest 2 -- 生成测试报告
From: https://www.cnblogs.com/fnng/p/4768239.html Python单元测试框架之pytest -- 生成测试报告 2015-08-29 00:40 by ...
随机推荐
- Java进阶——带你入门分布式中的Nginx
如何实现服务器之间的协同功能呢? 通过 Nginx 提供的反向代理和负载均衡功能,可以合理的完成业务的分配,提高网站的处理能力:同时利用缓存功能,还可以将不需要实时更新的动态页面输出结果,转化为静态网 ...
- python安装whl文件
在命令指示符下(cmd)的Python3安装命令为: pip3 install 文件名.whl 安装出错: matplotlib-2.0.0-cp34-cp34m-win_amd64.whl is n ...
- JVM系列第12讲:JVM参数之查看JVM参数
今天要说的是如何查看 JVM 中已经设置的参数,包括显示参数和隐式参数. 打印显式参数 -XX:+PrintVMOptions 该参数表示程序运行时,打印虚拟机接受到的命令行显式参数.我们用下面的命令 ...
- Python合并多个Excel数据
安装模块 1.找到对应的模块 http://www.python-excel.org/ 2.用pip install 安装 pip install xlrdpip install XlsxWrite ...
- VueJs 源码分析 ---(一) 整体对 vuejs 框架的理解
vue-2.x SourceCode vue 2.x 源码解析 关于vue,以及为何要来写这份源码解析的原因 笔者从最开始接触到 vue 应该还是在 15年 10月份左右,当时听说 前端圈中发生很多的 ...
- EF架构~migration对mysql数据库的迁移
回到目录 ef这个orm工具确实强大,无论在实体建模还是在实体关系上,都发挥的很出色,而最近的code first针对数据库变更的使用更让我眼前一亮,先不说对sqlserver的支持,因为mssql本 ...
- Git合并不同url的项目
本文由云+社区发表 作者:工程师小熊 摘要:为了让项目能实现Git+Gerrit+Jenkin的持续集成,我们把项目从Git上迁移到了Gerrit上,发现有的同事在老Git提交代码,因为Gerrit做 ...
- springboot集成下,mybatis的mapper代理对象究竟是如何生成的
前言 开心一刻 中韩两学生辩论. 中:端午节是属于谁的? 韩:韩国人! 中:汉字是谁发明的? 韩:韩国人! 中:中医是属于谁的? 韩:韩国人! 中:那中国人到底发明过什么? 韩:韩国人! 前情回顾 M ...
- MySQL ProxySQL相关维护说明
背景: 前面的2篇文章MySQL ProxySQL读写分离使用初探和MySQL ProxySQL读写分离实践大致介绍了ProxySQL的使用说明,从文章的测试的例子中看到ProxySQL使用SQLIT ...
- [React] 从零开始的react
组件 1. 无状态组件 在React中,组件的名字必须用大写字母开头,而包含该组件定义的文件名也应该是大写字母(便于区分,也可以不是). 无状态组件是纯展示组件,仅仅只是用于数据的展示,只根据传入的p ...