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 小时前
云原生环境 Prometheus 企业级监控实战
linux·运维·服务器·kubernetes·云计算·prometheus
探云抛雾؁ۣۖ2 小时前
云计算---k8s运维~创建pod与pod的安全策略
运维·kubernetes·云计算
mjy_1112 小时前
Linux下的软件编程——文件IO
java·linux·运维
奥格列的魔法拖鞋~2 小时前
Mac配置服务器工具Royal TSX
运维·服务器·royal tsx
失因3 小时前
Web 服务详解:HTTP 与 HTTPS 配置
linux·运维·前端·http·https
cpsvps_net3 小时前
容器安全扫描工具在海外云服务器环境的集成方法
运维·服务器·安全
skywalk81634 小时前
vagrant和itamae怎么配合使用? (放弃)
运维·前端·ruby·vagrant
先天打工圣体的男人4 小时前
Linux环境gitlab多种部署方式及具体使用
运维·git·gitlab
孙克旭_5 小时前
day073-Jenkins消息通知与pipline流水线
linux·运维·jenkins
mohesashou5 小时前
云原生作业(nginx)
运维·nginx