python 框架 优化_python+unittest框架第六天unittest之优化测试报告

今天的内容主要是,用第三方的HTMLRUNner 第三方的报告来优化之前第五天批量执行案例的测试报告。案例的部分看第五天的批量执行笔记~

HTMLRUNner他可以生成更美观的测试报告,基于前辈造的车子,我们直接改造使用。先看下运行代码部分:

案例代码在批量执行第五天去看哦~~

1 #!/usr/bin/env python

2 import unittest #导入unittest

3 import os #导入前面学习的os库,方便获取文件路径

4 import time #导入time模块,方便我们获取当前时间

5 import HTMLTestRunner #HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展,它可以生成 HTML的 测试报告。

6

7 defallTests():8 suite=unittest.TestLoader().discover( #实例化测试套件,discover()方法可以批量执行多个模块中的测试案例

9 start_dir=os.path.dirname(__file__), #start_dir=该参数是discover()方法中的,后面的参数是需要批量执行的用例模块路径

10 pattern='test_*.py', #pattern=该参数是discover()方法中的,后面的参数是所有需要执行的用例前面是test_,后半部分用*号代替的.py文件

11 top_level_dir=None) #top_level_dir=该参数是discover()方法中的,固定格式:top_level_dir=None

12 return suite #记住返回测试套件

13 def getnowtime(): #该方法获取当前最新时间

14 return time.strftime('%Y-%m-%d %H_%M_%S',time.localtime(time.time())) #'%Y-%m-%d %H_%M_%S' 代表:年月日 时_分_秒 ,不能用冒号 %H:%M:%S 切记

15

16 def run(): #运行

17 fp = os.path.join(os.getcwd(), 'report',getnowtime()+'testReport.html') #os.getcwd()获取当前的路径,os.path.join()拼接路径,用当前路径和现在的repot目录做拼接,生成时间+testReport.html测试报告文件

18 HTMLTestRunner.HTMLTestRunner(19 stream=open(fp,'wb'), #在fp文件中用:wb参数 w代表写入,b:是用二进制写入测试报告的内容

20 title='自动化测试报告', #测试报告的标题

21 description='自动化测试报告详情').run(allTests()) #测试报告的详情

22

23 if __name__ == '__main__':24 run()

首先如果你是python3,你可以直接用我改过的TMLTestRunner.py文件将他直接放入在你的Python3 安装包目录中的Lib文件夹中。比如:

这是我的目录:C:\Users\92938\tools\Python36\Lib   该文件夹中。如图:

大家可以在网上找一下这个文件,如果实在在不到留言邮箱我发送给你~~~

放入该文件后,你就可以导入   import  HTMLTestRunner 模块   然后记得创建测试报告包,以及指定测试报告输出到那个目录下。还有时间哦~方便看每次执行后,那个才是最新执行的结果~~

接下来就是看我刚才顶部的代码,理论上你应该能看的懂我的注释,如果你还是不懂,就留言吧~~~

我们看下执行后生成的测试报告:

ennn...总结:

1、python2 和 python3 使用的HTMLRunner.py文件是不一样的,需要修改~~

2、测试模块.py文件,一定要写规范,不要使用中文或中横线(----)我使用后,发现这个模块文件中的案例不会被执行~~~

3、记得获取当前最新时间,方便看最新的测试报告~~  另外时间的地方不能用冒号,切记

4、测试完毕后,点击html文件,在浏览器中打开,就可以看了

来自新手,在路上~~~不会的朋友留言哦~~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/292191.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux c的连接库和怎么同时编译多个源程序

1、理解库函数 库函数有头文件和库文件(so 或者 a)的集合 1)头文件的默认目录 /usr/include 2)库文件的默认目录 /user/lib 3)linux的库文件分为动态连接库(.so)和静态连接库(.a) 他们之间的差距在于程序执行时所需代码是运行时加载的,海山编译是静态加载的,默认情况下…

2023年12月青少年机器人技术等级考试(四级) 实操试卷

主题:TT马达转速感应装置 器件:Atmega328P主控板1块,TT马达1个,直流电机驱动芯片或模块1个,超声波传感器1个,LED灯2个(分别为LED_A和LED_B)及相应辅件。以上模块也可使用分立器件结合…

在C#中的各种应用

1.怎么解决在C中的#define的预编译 比如在C#想将DataType全都替换成Int using DataTypeSystem.Int32;将上面一句放在开头就行了 2.在字符串中声明一个字符串数组 int count5; string[] stringArraynew string[count];这样就行了转载于:https://www.cnblogs.com/chenbuer/p…

微软第二财季营收达 517 亿美元,净利润同比增长 21%

微软今日发布了 2022 财年第二财季财报,营收为 517.28 亿美元,与去年同期的 430.76 亿美元相比增长 20%。净利润为 187.65 亿美元,与去年同期的 154.63 亿美元相比增长 21%。生产力和业务流程部门的营收为 159.36 亿美元,与去年同…

python开源考试_Github 上 10 个值得学习的 Springboot 开源项目

spring Boot 几乎继承了所有 Spring 框架的优点,同时还可以让项目的配置更简化、编码更简化、部署更方便。近两年受到很多开发者的追捧,也是火热的不行!下面给大家整理了 10 个 Github 上最值得学习的 Springboot 开源项目,帮助大…

二值图像--形态学处理3 开操作和闭操作

学习DIP第13天 转载请标明出处:http://blog.csdn.net/tonyshengtan,欢迎大家转载,发现博客被某些论坛转载后,图像无法正常显示,无法正常表达本人观点,对此表示很不满意。。。。。。。。 开篇废话 简单来说所…

Linux查看硬件信息很Easy

往往一到公司盘点或升级服务器硬件时候,需要记录服务器的具体硬件信息,对于Windows下来说,装个鲁大师既可以查看所有硬件信息,但Linux下要想查看这些硬件信息要麻烦的多,下面是我整理的一些命令,再查看Linu…

常见正则表达式

2019独角兽企业重金招聘Python工程师标准>>> ip地址 /^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(…

WPF 实现动态Windows桌面壁纸~

由于微信群人数太多入群请添加小编微信号yanjinhuawechat 或 W_Feng_aiQ 邀请入群需备注WPF开发者 PS:有更好的方式欢迎推荐。此项目灵感来源于 丑萌气质狗 B站同名 QQ群:560611514 (学习Unity3D)增加了播放视频。01—代码如下一…

linux c用open打开(创建)一个文件

1、文件描述符 Linux操作系统内核(kernel)利用文件描述符来访问文件,文件描述符大于等于0,是一个用户描述被打开文件的索引值,它指向该文件的相关信息记录表,当文件打开或者创建新文件的时,就会返回一个文件描述符,当读写文件时,也需要使用文件描述符来指定特写文件。…

TCP的TIME_WAIT状态

主动关闭的Socket端会进入TIME_WAIT状态,并且持续2MSL时间长度,MSL就是maximum segment lifetime(最大分节生命期),这是一个IP数据包能在互联网上生存的最长时间,超过这个时间将在网络中消失。MSL在RFC 1122上建议是2分…

python任务调度平台 界面_分布式任务调度平台XXL-JOB

以前带我的人说过,最好的学习就是看官方文档,个人也有4个T的学习视频,但是会发现讲的都是入门,有的也比较浅。官方文档比较官方,也比较权威,打开xxl-job的官网,写的贼详细,有些人喜欢…

linux c之#include <unistd.h> 总结

1、解释 unistd解释为unix 标准的输入输出 2、常用函数 主要函数是文件的读、写、得到进程的id ssize_t read(int, void *, size_t); // 读取文件使用 int unlink(const char *); ssize_t write(int, const void *, size_t); // 写文件 int usle…

Natasha 4.0 探索之路系列(三) 基本的动态编译

相关文章Natasha 4.0 探索之路系列(一) 概况Natasha 4.0 探索之路系列(二) 「域」与插件Natasha 的设计动态编译Roslyn 为开发者提供了动态编译的接口,允许我们以 C# 代码来编写 Emit 或 表达式树生成的程序集,但是完成一个编译需要诸多步骤,…

〖Windows〗Linux的Qt程序源码转换至Windows平台运行,编码的解决

在中国大陆,Windows默认的编码是gb2312,而Linux是UTF8; 多数情况下,把Linux上的程序转换至Windows上运行需要进行编码转换才能正常显示; 而其实大可以不必的,同样,文件使用的依然是UTF-8&#x…

thinkphp3.2 jquery ajax巧妙使用

1.做帐号管理的时候,我们去除一些重复的帐号是有必要的。 我使用的是jquery ajax 来和控制器进行传值。当我们跳转到我们要验证方法返回结果的时候,我们就可以使用php里的一个 0 为false 1 为true这个来传值。 当存在我们就echo json_encode(0);不存在我…