Python TestSuite生成测试报告过程解析


Posted in Python onJuly 23, 2020

简介:为每一个测试用例添加说明,那么将会使报告更加易读懂,工作中汇报数据的技巧
u"test_one方法"

HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展,它可以生成 HTML的 测试报告,无法通过pip安装。

首先要下 HTMLTestRunner.py 文件,将下载的文件放入…\python\Lib目录下 (或者同个路径)

注意点:

python2和python3,语法不一样,导致HTMLTestRunner在python3不兼容

解决办法:导入课程资料里面修改好的HTMLTestRunner.py (该版本是网上的小伙伴修改好的)

# -*- coding: UTF-8 -*-
import unittest
import HTMLTestRunner
import time

class XdclassTestCase(unittest.TestCase):
  def setUp(self):
    self.age = 32
    self.name = "小D课堂"
    print(" setUp method=======")


  def tearDown(self):
    print(" tearDown method=======")
    #断言是否相同
    self.assertEqual('foo'.upper(), 'FOO')

  def test_one(self):
    u"test_one方法"
    print(" test_one 二当家小D 来了")
    #断言是否相同
    self.assertEqual(self.name, "小D课堂",msg="名字不对")

  def test_two(self):
    u"test_TWO方法说明"
    print(" test_two 前端 来了")
    #断言是否为 true, msg是断言错误的提示信息
    self.assertTrue('XD'.isupper(), msg="不是大写")
    
  def test_three(self):
    u"这是首页登录测试用例"
    print(" test_three 后端 来了")
    self.assertEqual(self.age,32)

  def test_four(self):
    print(" test_four 小D课堂官网上线啦 https://www.xdclass.net")
    self.assertEqual(self.age,32)

if __name__ == '__main__':
  suite = unittest.TestSuite()
  suite.addTest(XdclassTestCase("test_two"))
  suite.addTest(XdclassTestCase("test_one"))
  
  suite.addTest(XdclassTestCase("test_three"))
  suite.addTest(XdclassTestCase("test_four"))

  #verbosity参数可以控制执行结果的输出,0 是简单报告、1 是一般报告(默认)、2 是详细报告
  #runner = unittest.TextTestRunner(verbosity=2)
  #runner.run(suite)
  #文件名中加了当前时间,为了每次生成不同的测试报告
  file_prefix = time.strftime("%Y-%m-%d %H_%M_%S", time.localtime())
  print(file_prefix)
  #创建测试报告,此时这个文件还是空文件
  # wb 以二进制格式打开一个文件,只用于写入,如果文件存在则覆盖,不存在则创建
  fp = open("./"+file_prefix+"_result.html","wb")
  # stream定义一个测试报告写入的文件,title就是标题,description就是描述
  runner = HTMLTestRunner.HTMLTestRunner(stream=fp, title=u"小D课堂 测试报告",description=u"测试用例执行情况")
  
  runner.run(suite)
  fp.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python读写文件方法总结
Jun 09 Python
Django Admin 实现外键过滤的方法
Sep 29 Python
python 打印直角三角形,等边三角形,菱形,正方形的代码
Nov 21 Python
使用Python实现windows下的抓包与解析
Jan 15 Python
Python实现登陆文件验证方法
Oct 06 Python
python最小生成树kruskal与prim算法详解
Jan 17 Python
python3使用matplotlib绘制条形图
Mar 25 Python
Python使用dict.fromkeys()快速生成一个字典示例
Apr 24 Python
使用Python实现画一个中国地图
Nov 23 Python
python中怎么表示空值
Jun 19 Python
基于python图书馆管理系统设计实例详解
Aug 05 Python
Python中免验证跳转到内容页的实例代码
Oct 23 Python
快速解释如何使用pandas的inplace参数的使用
Jul 23 #Python
Python分类测试代码实例汇总
Jul 23 #Python
基于Python3读写INI配置文件过程解析
Jul 23 #Python
Linux安装Python3如何和系统自带的Python2并存
Jul 23 #Python
Java爬虫技术框架之Heritrix框架详解
Jul 22 #Python
Python 绘制可视化折线图
Jul 22 #Python
python写文件时覆盖原来的实例方法
Jul 22 #Python
You might like
phpBB BBcode处理的漏洞
2006/10/09 PHP
php 操作调试的方法
2012/07/12 PHP
分享PHP守护进程类
2015/12/30 PHP
PHP实现可自定义样式的分页类
2016/03/29 PHP
微信 开发生成带参数的二维码的实例
2016/11/23 PHP
简单实现PHP留言板功能
2016/12/21 PHP
PHPExcel导出2003和2007的excel文档功能示例
2017/01/04 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
Prototype 学习 Prototype对象
2009/07/12 Javascript
基于javascipt-dom编程 table对象的使用
2013/04/22 Javascript
常用的JavaScript验证正则表达式汇总
2013/11/26 Javascript
javascript实例--教你实现扑克牌洗牌功能
2014/05/15 Javascript
jquery实现简易的移动端验证表单
2015/11/08 Javascript
当jquery ajax遇上401请求的解决方法
2016/05/19 Javascript
javascript实现抽奖程序的简单实例
2016/06/07 Javascript
微信小程序 swiper制作tab切换实现附源码
2017/01/21 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
2017/08/06 Javascript
webpack 4.0.0-beta.0版本新特性介绍
2018/02/10 Javascript
通过实例学习React中事件节流防抖
2019/06/17 Javascript
微信小程序学习总结(四)事件与冒泡实例分析
2020/06/04 Javascript
对Tensorflow中权值和feature map的可视化详解
2018/06/14 Python
Python Django框架防御CSRF攻击的方法分析
2019/10/18 Python
高级3D打印市场:Gambody
2019/12/26 全球购物
Bitiba意大利:在线宠物商店
2020/10/31 全球购物
旅游管理毕业生自荐信
2013/11/05 职场文书
机械系大学毕业生推荐信
2013/11/27 职场文书
交通事故调解协议书
2014/04/16 职场文书
个人授权委托书模板
2014/09/14 职场文书
“四风”问题对照检查材料思想汇报
2014/09/16 职场文书
市场总监岗位职责
2015/02/11 职场文书
班级联欢会主持词
2015/07/03 职场文书
HR在给员工开具离职证明时,需要注意哪些问题?
2019/07/03 职场文书
pytest配置文件pytest.ini的详细使用
2021/04/17 Python
Mysql中存储引擎的区别及比较
2021/06/04 MySQL
Win11筛选键导致键盘失灵怎么解决? Win11关闭筛选键的技巧
2022/04/08 数码科技
用PYTHON去计算88键钢琴的琴键频率和音高
2022/04/10 Python