自动化学习3:日志记录及测试报告的生成--自动化框架搭建

server/2024/9/25 1:05:07/

一.日志记录

1.配置文件pytest.ini:将日志写入文件方便日后查询或查看执行信息。

需要将文件处理器(文件存放位置/时间/格式等等)添加到配置文件中的【日志记录器】

# pytest.ini
[pytest]
# ---------------日志文件,需要配合logging库--------------
# 启动实时监测日志
log_cli = True
# 监测日志的等级显示
log_cli_level = INFO
# 输出日志的显示格式
log_cli_format = %(asctime)s (%(levelname)s) | %(filename)s:%(lineno)s | %(message)s
# 显示日志的时间格式
log_cli_date_format = %Y-%m-%d %H:%M:%S
# 日志文件存放位置
log_file = ./logs/pytest_log.txt
# 文件中显示的日志等级
log_file_level = INFO
# 文件中显示的日志时间格式
log_file_date_format = %Y-%m-%d %H:%M:%S
# 文件中显示的日志格式
log_file_format = %(asctime)s ( %(levelname)s ) %(filename)s:%(lineno)s | %(message)s

2.日志记录

logging配合日志生成更灵活的日志控制或在不同的测试用例中有不同的日志需求

import pytest
import logging # 配合日志记录@pytest.fixture(scope='module')
def begin():print('123')  # 前置代码,在用例之前自动执行# 日志logging.info(f'这是测试用例的info')logging.warning(f'这是测试用例的warning')logging.error(f'这是测试用例的error')yieldprint('456')  # 后置代码,在用例执行之后自动执行

每次pytest命令执行一次即可生成覆盖

其他优秀文章参考:Pytest 记录日志输出到控制台和写入文件_pytest打印日志-CSDN博客

二.生成测试报告

测试报告的步骤及报错解决:无法将“allure”项识别为 cmdlet、函数、脚本文件或可运行程序的名称的解决方法-allure的安装配置全过程-CSDN博客

1.下载/解压allure安装包/配置 allure环境变量(步骤如上链接)

2.下载allure-pytest插件 pip install allure-pytest(步骤如上链接)

3.修改配置文件pytest.ini

addopts = -v -s --alluredir=./temps --clean-alluredir

# pytest.ini
[pytest]
# --------------------测试报告生成----------
# 1)进行配置环境
# 首先需要进行下载pip install allure-pytest
addopts = -v -s --alluredir=./temps --clean-alluredir
# 2)执行生成命令:allure generate -o report temps

4.执行系统命令

allure generate -o report temps

三.自动化框架:日志记录到测试报告的生成一键生成

import os
import pytestpytest.main() # 启动框架os.system('allure generate -o report trmps') # 生成测试报告


http://www.ppmy.cn/server/121582.html

相关文章

状态估计算法

目录 前言一、贝叶斯滤波二、卡尔曼滤波2.1 KF简介2.2 基本线性模型2.3 KF公式推导2.3.1 预测值2.3.2 先验误差协方差矩阵2.3.3 卡尔曼增益2.3.4 最优估计值2.3.5 后验误差协方差矩阵 2.4 KF算法使用2.5 MATLAB验证2.5 Python验证 三、扩展卡尔曼滤波3.1 EKF原理3.2 MATLAB实现…

视频格式转为mp4(使用ffmpeg)

1、首先安装ffmpeg,下载链接如下 https://www.gyan.dev/ffmpeg/builds/packages/ffmpeg-6.1.1-full_build.7z 安装后确保ffmpeg程序加到PATH路径里,cmd执行ffmpeg -version出现下图内容表示安装成功。 2、粘贴下面的脚本到文本文件中,文件后缀…

Call OpenAI API with Python requests is missing a model parameter

题意:使用 Python requests 调用 OpenAI API 时缺少 model 参数。 问题背景: Im trying to call OpenAI API from Python. I know they have their own openai package, but I want to use a generic solution. I chose the requests package for its f…

VmWare安装虚拟机教程(centos7)

VMWare下载: 下载 VMware Workstation Pro - VMware Customer Connect 安装包:(16的版本)免费!(一个赞就行) 一直点下一步即可,注意修改一下安装位置就好 二、安装虚拟机 安装虚…

kismet和war driving具体准备(仅供无线安全学习)

war driving准备 一台笔记本 一个最好是双频的网卡,单频搜集信号少 我自己买的是http://e.tb.cn/h.grI4EmkDLOqQXHG?tkKZ5g3RVeH6f 如果经济条件允许可以去买大功率天线(我买的车载的 大概40db这样子 范围广) http://e.tb.cn/h.grCM0CQ6L…

【PostgreSQL教程】PostgreSQL 特别篇之 常用函数

博主介绍:✌全网粉丝20W+,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。 感兴趣的可…

day-59 两数相除

思路 首先判断商的正负,然后便可将两个数都转换为整数,方便商的计算,商的计算用被除数不断减去除数即可 解题过程 注意:整型的负值比正值多一个数,这种特殊情况需要需要单独讨论,同时当除数为1时&#xff…

python基础题练习

1.可否定义一个sum函数呢?返回指定区间的值的和?例如,区间[1,4]的和为123410返回指定区间值的平方的和呢?立方呢? 代码: # 计算从start到end(包括end)的所有整数的和。 def sum_ra…