pytest+allure+jenkins 实现接口自动化测试

先看这篇,再看本文比较好CSDN

jenkins配置:

1、参数化输入:输入执行的环境

2、设置代码链接:APITEST: 接口自动化测试 自动化接口测试代码库

3、 根据输入的环境入参,修改代码库中的配置文件

配置文件如下所示

ls

定义要修改的配置文件 .ini 路径

INI_FILE="./conf/env.ini"

if [ "$env" == "验收环境" ]; then

NEW_VALUE=2

elif [ "$env" == "仿真环境" ]; then

NEW_VALUE=1

else

NEW_VALUE=0

fi

echo $NEW_VALUE

检查文件是否存在

if [ ! -f "$INI_FILE" ]; then

echo "配置文件 $INI_FILE 不存在。"

exit 1

fi

使用 sed 替换 flag 的值,flag 0是生产,1仿真,2验收

sed -i.bak "s/flag\s*=\s*[0-9]\+/flag = NEW_VALUE/g" "INI_FILE"

(可选)备份原文件

mv "INI_FILE.bak" "INI_FILE.backup"

echo "已更新 INI_FILE 中 key 的值为 NEW_VALUE"

4、 执行用例

pytest --alluredir=allure-results --clean-alluredir ./testsuite/test

allure generate allure-results - o allure-report --clean

5、 配置allure

6、执行

结果如下:

遇到问题及解决方案

解决方案:

进入 Jenkins 的 ‌Manage Jenkins > Configure System ‌,在 ‌Global properties > Environment variables‌ 中添加:Name: PYTHONPATH Value: $WORKSPACE

解决方案:

  1. 进入 Jenkins 控制台 → ‌Manage Jenkins ‌ → ‌Global Tool Configuration ‌ → ‌JDK‌。
  2. 点击 ‌Add JDK ‌,取消勾选 ‌Install automatically‌。
  3. 输入名称(如 JDK11)和 ‌完整的 JDK 主目录路径(不带bin)
相关推荐
冷小鱼1 小时前
从 Docker 到容器编排:框架选型与指令详解实战指南
运维·docker·容器·k8s·docker compose·docker swarm
nashane1 小时前
HarmonyOS 6学习:解决无限循环动画被打断后“消失“的诡异问题
运维·nginx·harmonyos 5
csg11071 小时前
智慧养殖篇(四):猪场自动化饲喂与疫病预警
运维·单片机·嵌入式硬件·物联网·自动化
原来是猿1 小时前
Linux - 【理解进程组、会话与作业控制】
linux·运维·服务器
程序员老邢2 小时前
【技术底稿 34】文件存储服务域名切换 & S3 兼容性问题全复盘
运维·文件存储·seaweedfs·程序员日常·技术底稿·s3兼容·线上问题复盘
码点滴2 小时前
用自然语言指挥 K8s 集群:AI 运维 Agent 的架构原理与可运行原型
运维·人工智能·kubernetes
2301_816374332 小时前
利用反向代理实现动静分离
运维
黄金矿工Kingliu2 小时前
Windows运行VMware蓝屏解决方案及网卡配置
运维·服务器
ziqi5222 小时前
Docker容器镜像管理、制作
运维·docker·容器
D4c-lovetrain2 小时前
Linux个人心得29(深入理解K8S Pod优先级与驱逐机制:从原理到实战踩坑)
linux·运维·kubernetes