pytest + yaml 框架 -56. 输出日志优化+allure报告优化

news2024/11/14 6:00:58

前言

v1.4.8 版本优化接口请求和响应输出日志,生成的allure报告也按步骤优化request和response详情日志

优化日志

用例

test_log1:
-
  name: log1
  request:
    url: http://127.0.0.1:8000/api/test/demo
    method: GET
  validate:
    - eq: [status_code, 200]
    - eq: ['"code": (.+?),', '0']
    - eq: ['"msg": "(.+?)"', '成功success!']

控制台日志优化

a0_log/test_log.yml::test_re2
----------------------------------------------------- live log call ------------------------------------------------------
2023-09-25 18:21:01 [INFO]: 执行文件-> test_log.yml
2023-09-25 18:21:01 [INFO]: base_url-> http://127.0.0.1:8000
2023-09-25 18:21:01 [INFO]: config variables-> {}
2023-09-25 18:21:01 [INFO]: 运行用例-> test_re2
2023-09-25 18:21:01 [INFO]: yml raw  -->: {'url': 'http://127.0.0.1:8000/api/test/demo', 'method': 'GET'}
2023-09-25 18:21:01 [INFO]: ------  request info   ------
GET http://127.0.0.1:8000/api/test/demo
headers: {
    "User-Agent": "python-requests/2.31.0",
    "Accept-Encoding": "gzip, deflate",
    "Accept": "*/*",
    "Connection": "keep-alive"
}

2023-09-25 18:21:11 [INFO]: ------  response info   ------
url: http://127.0.0.1:8000/api/test/demo
status_code: 200 OK
headers: {
    "Date": "Mon, 25 Sep 2023 10:21:09 GMT",
    "Server": "WSGIServer/0.2 CPython/3.6.8",
    "Content-Type": "application/json",
    "X-Frame-Options": "SAMEORIGIN",
    "Content-Length": "260"
}
cookies: {}
body: {
    "code": 0,
    "msg": "成功success!",
    "data": [
        {
            "age": 20,
            "create_time": "2019-09-15",
            "id": 1,
            "mail": "283340479@qq.com",
            "name": "yoyo",
            "sex": "M"
        },
        {
            "age": 21,
            "create_time": "2019-09-16",
            "id": 2,
            "mail": "123445@qq.com",
            "name": "yoyo111",
            "sex": "M"
        }
    ]
}

2023-09-25 18:21:11 [INFO]: validate 校验内容-> [{'eq': ['status_code', 200]}, {'eq': ['"code": (.+?),', '0']}, {'eq': ['"m
sg": "(.+?)"', '成功success!']}]
2023-09-25 18:21:11 [INFO]: validate 校验结果-> eq: [200, 200]
2023-09-25 18:21:11 [INFO]: validate 校验结果-> eq: [0, 0]
2023-09-25 18:21:11 [INFO]: validate 校验结果-> eq: [成功success!, 成功success!]

allure 报告展示

生成allure报告

pytest --alluredir ./report
allure serve ./report


网易云完整视频课程https://study.163.com/course/courseMain.htm?courseId=1213419817&share=2&shareId=480000002230338
报名咨询wx:283340479 (已报名的同学学习过程中有问题,都可以协助解决)

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

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

相关文章

从 0 到 1 打造企业数字化运营闭环

打造企业数字化运营闭环是现代企业发展的必然趋势。它涉及到信息技术、数据分析、流程优化等多个方面,通过有效整合和运用这些资源,可以实现从0到1的全面数字化转型。 下面是一个详细的介绍,包括步骤、关键要素和实施策略。 一、了解需求和…

吉客云对接打通金蝶云星空销售单查询接口与销售出库新增接口

吉客云对接打通金蝶云星空销售单查询接口与销售出库新增接口 接通系统:吉客云 吉客云是基于“网店管家”十五年电商ERP行业和技术积累基础上顺应产业发展需求,重新定位、全新设计推出的换代产品,从业务数字化和组织数字化两个方向出发&#x…

图扑 HT for Web 风格属性手册教程

图扑软件明星产品 HT for Web 是一套纯国产化独立自主研发的 2D 和 3D 图形界面可视化引擎。HT for Web(以下简称 HT)图元的样式由其 Style 属性控制,并且不同类型图元的 Style 属性各不相同。为了方便查询和理解图元的 Style 属性&#xff0…

第二证券:5.5G时代将至 算力基建迎政策助力

昨日,A股全线低开,三大股指盘中均跌超1%,盘中冲高回落,午后逐渐止跌。到收盘,沪指跌0.44%报3096.92点,深成指微跌0.03%报10106.96点,创业板指跌0.26%报1998.61点,两市算计成交7700元…

腾讯系数藏停摆一年 玩家被甩在维权路上

暴雷、维权、清退是过去一年数藏行业的常态。小平台跑了,腾讯这样的大厂以关停、退款终止运营数藏业务时,吃相也不好看。 在黑猫投诉平台上,幻核被投诉退款缓慢,曾经发行过数字藏品的QQ音乐被投诉违背发行时承诺的“持有356天后可…

嵌入式学习笔记(52)ADC的引入

11.1.1什么是ADC (1)ADC:analog digital converter,AD转换,模数转换(也就是模拟转数字) (2)CPU本身是数字的,而外部世界变量(如电压、温度、高度、压力)都是模拟的,所以需要用CPU来处理这些外…

【办公自动化】在Excel中按条件筛选数据并存入新的表2.0(文末送书)

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

多测师肖sir_高级金牌讲师_python之 字符、索引、切片、列表、集合004

python之 字符、索引、切片、列表、集合 一、索引 索引在公司中一般叫下标或角标 定义:我们可以直接使用索引来访问序列中的元素,同时索引可分为正向和负向两种,而切片也会用到索引,下面放上一个图,有助于大 家理解正…

Docker 网络访问原理解密

How Container Networking Works: Practical Explanation 这篇文章讲得非常棒,把docker network讲得非常清晰。 分为三个部分: 1)docker 内部容器互联。 2)docker 容器 访问 外部root 网络空间。 3)外部网络空间…

MySQL数据库技术笔记(6)

新建两张表,班级表和学生表,因为班级表与学生表之间是 1 对多的关系,需要将少的表的主键放置多的 表中称为外键。 添加班级信息 添加学生信息并关联对应的班级 连接查询,表示查询的时候关联多张表进行查询 最终两张表的交叉连接…

面试算法24:反转链表

题目 定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。例如,把图4.8(a)中的链表反转之后得到的链表如图4.8(b)所示。 分析 由于节点j的next指针指向了它的前一个节…

别用==比较包装类

前两天工作把代码合并到主分支时,被公司的安全监测机制拦截了,一看是因为用了来比较Integer类型。 在阿里开发手册中,有这样一条:在包装类进行比较的时候,要用equals方法,而不是。 具体的原因下面也讲解的…

提升爬虫IP时效:解决被封IP的难题

在进行数据采集时,经常会遇到被目标网站封禁IP的情况,这给爬虫系统带来了困扰。本文将介绍如何提升爬虫IP的时效,解决被封IP的难题,帮助您顺利进行数据采集,不再受限于IP封禁。 第一步:使用爬虫IP 使用爬虫…

飞书应用机器人文件上传

背景: 接上一篇 flask_apscheduler实现定时推送飞书消息,当检查出的异常结果比较多的时候,群里会有很多推送消息,一条条检查工作量会比较大,且容易出现遗漏。   现在需要将定时任务执行的结果记录到文件,…

ESPHome不经过HA设备1直接控制设备2

目录 1.公共配置文件2.设备2:台灯3.控制器(http.post)4.获取状态(http.get) 1.公共配置文件 #wifi.yaml wifi: networks:- ssid: "123"password: "www.123.com"- ssid: "456"password: "www.123.com"# 当连接不上指定wifi,开启热点配…

idea-java: 错误: 无效的源发行版:16

1.CtrlAltShiftS 2.jdk版本对应好 3.modules中一栏sdk 4.modules中一栏源码 5.所有modules修改 6.修改项目配置 ctrlalts,修改为指定版本,应用即可

codesys【按钮】

1用于控制bool信号。 1声明全局变量 2绑定该变量 运行后,按钮就能控制这个bool变量了。 2按钮【自复位】 3按钮【锁位】

订购OV通配符SSL证书

目前很多单位申请OV通配符SSL证书,一头雾水,其实操作还是比较简单的。 订购条件OV通配符组织单位,申请之前需要确定好单位全程,并且在第三方一些主流的公共平台可以查到主体信息。 然后根据以下步骤操作就可以了: 1…

什么是API接口?给大家举例说明

Api接口也就是所谓的应用程序接口,api接口的全称是Application Program Interface,通过API接口可以实现计算机软件之间的相互通信,开发人员可以通过API接口程序开发应用程序,可以减少编写无用程序,减轻编程任务&#x…

WARNING: There was an error checking the latest version of pip.

警告:检查最新版本的pip时出错 忽略无效的分发 -ip VPN网络的提示对我非常有帮助。模块安装失败,出现上述警告,并重试连接断开警告: WARNING: There was an error checking the latest version of pip. WARNING: Retrying (Retr…