​python接口自动化(二十八)--html测试 报告——下(详解) ​

news/2024/4/17 11:39:30

简介

  五一小长假已经结束了,想必大家都吃饱喝足玩好了,那就继续学习吧。一天不学习,自己知道;两天不学习,对手知道;三天不学习,大家知道;一周不学习,智商输给猪。好了开个玩笑都逗大家一乐,但是想想还是有道理的。那就进

入正题:上一篇我们批量执行完用例后,已经生成的测试报告是生成 HTML 格式的。但是我们可以看出那个官方的测试报告既不美观也不大方,我们这里需要优化一下,优化的让人赏心悦目,就和看到一个美女一样看了一眼,忍不住回头再多

看一眼  - _ - 并且把上一篇遇到的问题列举解决一下。

 如果你想学习接口自动化测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的接口自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386   

【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)共计200条视频,包括:1.【接口自动化】目前软件测试的市场行情以及测试人员能力标准。、2.【接口自动化】全面熟练Requests库以及底层方法调用逻辑、3.【接口自动化】接口自动化实战及正则和JsonPath提取器的应用等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337&vd_source=488d25e59e6c5b111f7a1a1a16ecbe9a

python3如何改动下载的HTMLTestRunner

HTMLTestRunner.py 的python3 版本

由于 HTMLTestRunner.py 原本就是python2版本,目前还没找到python3版本,所以需要我们自己修改 HTMLTestRunner.py 文件。

1. 修改的地方

问题一:No module named StringIO

原因:python 3 中 没有 StringIO 这个模块。这里我们需要使用io 这个模块来代替。

解决方法:

第94行引入的名称要改,从 import StringIO 改成import io。

相应的,539行 self.outputBuffer = StringIO.StringIO() 要改成self.outputBuffer = io.BytesIO()

问题二:AttributeError: 'dict' object has no attribute 'has_key'

原因:python 3 字典类型的object 已经不支持 has_key函数,我们需要使用in 来进行遍历。

解决方法:

定位到642行,if not rmap.has_key(cls): 需要换成 if not cls in rmap:

问题三:'str' object has no attribute 'decode'

原因:python3 里面对字符的操作中,decode已经拿掉了。

解决方法:

定位到772行,把 ue = e.decode('latin-1') 直接改成 ue = e 。

另外766还有类似的uo = o.decode('latin-1'),改成 uo=o ;

问题四 :TypeError: can't concat bytes to str

原因:定位一下,报在了778行的内容escape(uo+ue) 。这是因为我们上面给uo赋值的时候,走的是else流程,uo被赋值的是bytes类型的值。 而bytes类型不能直接转化为str类型。所以我们需要在前面给uo赋值的时候先将bytes类型转换为 str类型。

解决方法:

修改768行的 uo = o ,直接改成 uo = o.decode('utf-8') 。

另外 774还有类似的  ue = e, 改成 ue = e.decode('utf-8')。

问题五:TypeError: unsupported operand type(s) for >>: 'builtin_function_or_method' and 'RPCProxy'

原因: python3  不支持 print >> sys.stderr 这种写法,这里定义输出流的话,采用print("This is print str",file=sys.stderr) 这种方式。

解决方法:

定位到631行,把print的语句修改掉,原来是print >>sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime), 可改成 print('\nTime Elapsed: %s' % (self.stopTime-self.startTime),file=sys.stderr)

问题六:TypeError: 'str' does not support the buffer interface

原因:定位一下,问题出在118行,这里s是str类型,我们需要把传过来的s转化为bytes类型。

解决方法:

定位到118行,把 self.fp.write(s) 修改为 self.fp.write(bytes(s,'UTF-8')) 即可。

2. 保存

修改后对HTMLTestRunner.py 保存一下。

3. 调用语句更改

python3 里面打开文件使用 open,不要再去用file了。

即 fp = file(filename,'wb')替换成 fp = open(filename,'wb');

关闭该文件可用fp.close()

备注: 改动之后,中文也不会乱码。

中文乱码

1、测试报告中,msg 自定义异常内容有中文情况会出现乱码,如图所示:

2、找到 HTMLTestRunner.py 文件,搜索:uo =

3、找到红色区域设置编码的两个地方

4、注释掉红色区域这两个设置,重新添加编码格式为:uo = o.decode('utf-8') ue = e.decode('utf-8'),或者在此基础上直接修给成uo = o.decode('utf-8') ue = e.decode('utf-8'),建议初学者还是用第一种方法。这样出错了,可以很快还原,否则

在碰到更复杂的代码直接修改就可能会遇到问题

5、修改好之后记得保存,重新运行,乱码问题就解决了

 python3 报告问题

1、各位小伙伴可以按照我前边的方法进行自己修改,或者找我要也是可以,注意在修改的时候空格和Tab的问题,否则运行会报这样的错误

报告问题样式优化

1、优化是一些前端和CSS知识,在这里就不做详细介绍了,有兴趣的可以找我探讨一下,也可以和我要一下那个优化后的报告文件,优化后报告展示:

 小结

1、关于生成报告,优化报告就是这么简单,小伙伴们练起来吧!

2、为了新的报告不会覆盖掉老的测试报告,可以按图中的红色部分圈起来的方法实现

 3、参考代码(增加一行代码,测试报告的路径修改一下)

1 # 获取当前时间,这样便于下面的使用。
2 now = time.strftime("%Y-%m-%M-%H_%M_%S", time.localtime(time.time()))
3 #保存生成报告的路径
4 report_path =  "C:\\Users\\DELL\\PycharmProjects\\honggetest\\report\\result"+now+".html"


http://www.ppmy.cn/news/837244.html

相关文章

NVIDIA查看CPU、内存、GPU、DLA使用情况

其它相关《英伟达显卡监控工具nvtop使用方法》 1 jetson 查看方法 -----------------------------------2020.3.6更新-------------------------------------- 官方新推出 jtop 工具,专门用来查看 jetson 的 CPU、GPU 等信息,使用方法也很简单 安装方…

【 vue使用请求loading:组件形式】

vue使用请求loading:组件形式(不推荐:太麻烦了,每个需要用到的页面都需要引用一次组件) 这是我项目中想使用loading之后踩的第一个坑,后面优化用了vant自带的提示框,比较简单, 可移步这篇文章→→→ vuevant使用请求l…

设计模式---观察者模式

1,概念 属于行为模式的一种,定义了一种一对多的依赖关系,让多个观察者对象同时监听某一对象主题对象,这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。 在观察者模式中有如下角…

年味贺岁!雅迪“黑科技”为非遗文化注入年轻活力

临近年关,剪窗花、挂红灯、晒腊肉、备年货……处处洋溢着浓浓年味儿,而雅迪与非遗文化的这场跨界联动让年味儿更浓! 日前,雅迪冠能非遗掌潮之旅5支系列纪录片已全面上线,通过《逐影之旅》皮影戏篇、《跃然之旅》剪纸篇…

48. 旋转图像

题目链接:力扣 解题思路:找规律,matrix[x][y] 旋转90度后的位置为 matrix[y][n-x-1] 解法一:使用额外的矩阵result保存旋转后的图像,则新矩阵中的元素与原矩阵的对应关系为result[y][n-x-1] matrix[x][y],…

直达CSDN——创作者创收

catalogue 🌟 写在前面🌟 关于创收线下聚会🌟 创作是最简单的变现模式🌟 知识星球是否适合你🌟 独自开-让开发变得简单🌟 税/睡后收入🌟 KOL越具价值🌟 期待创收组织的建立&#x1f…

win7 搜索 包括内容搜索设置

左边组织—文件夹选项—常规—导航窗格—自动扩展当前文件夹文件夹选项 搜索—搜索内容—始终搜索文件名和内容,选搜索方式—包括子文件夹

Win7系统右上角没有搜索怎么办?Win7找回资源管理器中的搜索框

最近有win7系统用户发现打开资源管理器,文件夹等右上角没有搜索框,这让人十分不方便无法进行搜索,那么如何找回呢?下面小编就分享一下方法给大家。推荐 最好用的Win7系统下载操作步骤:1、打开Win7控制面板并以小图标显…

win7计算机搜索功能没有了,win7搜索功能不能用了怎么办|win7搜索功能不见了怎么解决? - 学无忧...

在Win7中搜索功能相对于WinXP来讲使用越来越方便,随便打开一个文件夹,点击右上角的“搜索”文本框,输入自己需要搜索的内容就可以进行文件搜索了,但最近有网友提到win7搜索功能不能用了,win7搜索功能不见了的情况&…

计算机搜索功能关闭,Win7系统下关闭windows search服务禁用搜索功能的方法

windows search是windows系统下的搜索服务,我们如果在系统当中使用本地搜索寻找一个文件可能需要很长一段时间,而windows search搜索速度就快多了,不过这个占用系统资源也很大,那么win7系统怎么禁用windows search呢?下…

如何使用计算机搜索功能,如何使用Win7搜索功能快速找到文件?

现在的电脑硬盘动辄500G,电脑文件越来越多,不免有时候忘记了文件的存放位置,慢慢找太浪费时间了。其实查找文件其实也是很有学问的,灵活应用现有的系统工具与软件技巧能起到事半功倍的效果,现在主流的windows7系统相比…

windows计算机搜索文件,win7如何根据文件中的文字搜索文件?教你win7直接搜索文件内容...

随着使用电脑的时间增加,我们会在系统中存放很多文件,有时候想打开其中一个文件会因为想不起文件名称而一个一个文件去查找。这种方法是非常麻烦恼人的。所以这时候我们需要通过系统自带的搜索功能来帮助我们,通过添加搜索条件然后直接搜索文…

win7搜索文件内容

现在win7的搜索感觉不如以前的winxp,搜索文件内容感觉非常麻烦。 有人说可以安装工具,有人说可以在win7系统上设置,这里我发现一个简单方法: 我的机器安装有VC6,当然其他版本也可以, 我直接打开VC6用搜索&…

使用Windows7的索引与搜索功能

不知道大家有没有这样的经历:突然想起一些以前看过的文章里的一些东西,只记着几个词,想找到原文看看或者要引用他们。为了解决这个问题,我们要一篇一篇的找吗?不,我们使用搜索功能。搜索功能可以帮助我们将…

win7下的内容搜索

查找opencv源代码时,老是找不到某个函数定义在哪个文件中,win7默认的查找只会找文件名。 现在知道怎么用内容查找了: 左边的“组织”—文件夹选项—常规—导航窗格—自动扩展到当前文件夹 文件夹选项—搜索—搜索内容—始终搜索文件名和内容…

Windows 7搜索功能讲解

Windows 7(以下简称Win 7)推出之后,各项功能都受到了用户的好评。其中Win 7的搜索功能更是一个亮点,成为很多用户最常用的一个功能。相比Windows XP完全依靠电脑性能的即时搜索,Win 7的搜索原理已经和过去完全不同,性能也大幅提升…

win7 计算机无法搜索,Win7电脑搜索功能不能用的解决方法

电脑都有一个搜索功能,它主要是为了方便我们查找文件、文档等。但是有用户想要使用它,却发现不能用,那么Win7电脑搜索功能不能用怎么办呢?不知道的朋友赶紧看看小编整理的Win7电脑搜索功能不能用的解决方法吧! 解决方法…

typescript环境搭建

安装vscode 安装tsc npm install -g typescript --registryhttps://registry.npm.taobao.org查看是否安装成功 tsc --version管理员身份启动powershell bash set-ExecutionPolicy RemoteSigned

在服务器搜索文件内容,Win7旗舰版如何搜索文件包含文字?Win7直接搜索文件内容的方法...

平常我们会存放许多文件在系统中,有时候想要将其打开,一时想不起文件名称,一个个文件翻找实在麻烦,这个时候就需要通过系统自带的搜索功能来帮助我们,添加搜索条件,直接搜索文件内容,帮助我们快…

win7 搜索文件内容

控制面板-->索引选项-->高级-->文件类型--> 找到你想要搜索内容的文件后缀名,点中它,然后选中下面的”为属性和文件内容添加索引“。 over。 win7相对于xp,这个功能确实难用之极。
最新文章