jenkins中配置参数化,并在python脚本接收参数实现参数化执行

在公司内进行Monkey测试脚本集成jenkins时,因为需要指定公司内不同的app进行测试。那么可以有两种方法解决该问题,要么创建多个脚本文件,多个jenkins jobs,进行构建。要么可以在配置job时通过传参数的方式,在python脚本中接受参数进行处理。

第二种方式肯定是最优。

在python脚本中,通过 argparse模块可以通过命令行进行传参,拿到参数并在脚本中进行处理。

具体用法:

import argparse

parser=argparse.ArgumentParser()

parser.add_argument("package")

parser.add_argument("totalEvent")

... 还可以添加更多其它参数

args=parser.parse_args()

param=vars(args)

v={}

for key,value in param.items():

vkey=value

print(v)

然后将上边的代码保存为demo.py,执行: python demo.py com.xx.xx 100

可以看到打印的字典类型的值:{"package":com.xx.xx,"totalEvent":100}

这样,就可以在脚本中拿到命令行的值进行参数处理了。

那么在jenkins中,进行参数配置:

在配置时,需要选择"参数化构建过程",比如我是这样设置的:

在需要使用这些参数的地方,这样使用:

比如,我使用的是windows命令,就是如上的"%标红的参数的名称%",如果你是在linux或macos系统的化,使用"$标红的参数的名称"来获取。

最后,在脚本就可以接收到传过来的参数了。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
前端世界9 分钟前
Linux服务器实战:NTP时间同步、SELinux权限与rsyslog日志管理,一次搞懂三大运维问题
linux·运维·服务器
Android系统攻城狮10 分钟前
Linux Gstreamer深度解析之gst_audio_converter_new调用流程与实战(二十)
linux·运维·服务器·gstreamer音视频·音视频进阶
海宇服务21 分钟前
零信任架构实战:基于海宇对外投资历史查询服务构建自动化供应商准入网关
运维·人工智能·架构·自动化
上海云盾-小余31 分钟前
BGP 高防底层原理:TCP 异常流量识别与清洗机制
运维·网络·tcp/ip
颜颜yan_2 小时前
ESP-IDF 鸿蒙 PC 适配全记录:打通 Python、构建工具链与 ESP32-P4 固件生成
python·华为·harmonyos
言乐62 小时前
Python加速器4跨境网络加速器
运维·服务器·开发语言·网络·python
weixin_440730502 小时前
线程02-并发串行-互斥锁-Semaphore-Event
python·thread
张小凡vip3 小时前
python--爬虫--经验积累的遇到的坑
开发语言·爬虫·python
毕业设计7033 小时前
(免费领源码) 基于微信小程序的预制菜商城的设计与实现25172-java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
vue.js·python·mysql·微信小程序·pycharm·微信开发者工具·推荐算法
xifangge20253 小时前
AGENTS.md 怎么写?涵盖 Java、Python、Vue、Go 的 8 套开箱即用模板
java·vue.js·python