jmeter中用python实现请求参数的随机方式

 更新时间:2024年10月28日 09:16:19   作者:wjcaolinghua  
首先,需下载Jython插件于https://www.jython.org/download后,将其放入JMeter的lib目录并重启JMeter,其次,添加JSR223PreProcessor并选择Python作为语言,编写脚本,其中metrics_ids3和metrics_weidu3为列表变量

jmeter用python实现请求参数的随机

首先需要下载插件来让jmeter支持python脚本

下载地址:https://www.jython.org/download

下载完成后放到jmeter安装目录的lib文件夹下

放置完成后需要重启jmeter

添加JSR223 PreProcessor,Language下拉框中多2项

选择第一项

添加python脚本

脚本中metrics_ids3和metrics_weidu3的值为列表

import json  
import random  
  
# 原始的metrics id和维度列表  
m***s_ids = ${metrics_ids3}
m***s_weidus=${metrics_weidu3}
  
# 生成随机组合的函数  
def generate_random_combination(ids):  
 return random.sample(ids, random.randint(1, len(ids)))  
  
# 生成随机组合指标和维度
chosen_m***s_ids = generate_random_combination(m***s_ids)
chosen_m***s_weidus = generate_random_combination(m***s_weidus)   
  
# 将chosen_metrics_ids赋值给randomMet***s  
randomMet***Ids = chosen_met***s_ids
randomWeidus= chosen_met***s_weidus

# 打印到JMeter日志中(可选)  
#log_message = "Random Met***s IDs: " + str(randomMet***Ids) +" Random weidus:"+str(randomWeidus)
## 使用print语句在JMeter日志中输出
#print(log_message)    
  
# 构造整个请求体  
body = {  
    "chosenM***sIds": chosen_met***s_ids,  
    "chosenD***Ids":[] ,  
    "timeP***tion": {  
        "statTime": "m***",  
        "beginTime": "202*-02",  
        "endTime": "202*-01"  
    },  
    "printSql": False,  
    "pageNum": -1  
}  
  
# 将整个body转换为JSON格式的字符串  
body_json = json.dumps(body)  
  
# 将body_json设置为JMeter变量  
vars.put("requestBodyJson", body_json)

在http请求中添加

body${requestBodyJson}

添加View Results Tree,运行脚本,查看结果

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python Type Hints 学习之从入门到实践

    Python Type Hints 学习之从入门到实践

    Type Hints(类型注解)进一步强化了Python是一门强类型语言的特性,它在 Python3.5 中第一次被引入。使用Type Hints可以让我们编写出带有类型的Python代码,本文将详细介绍一下Type Hints,感兴趣的小伙伴可以关注一下
    2021-11-11
  • python PIL Image 图像处理基本操作实例

    python PIL Image 图像处理基本操作实例

    这篇文章主要介绍了python PIL Image 图像处理基本操作实例包括图片加载、灰度图,图像通道分离和合并,在图像上输出文字,图像缩放,图像阈值分割、 二值化,图像裁剪需要的朋友可以参考下
    2022-04-04
  • Python项目管理工具Rye的工作原理

    Python项目管理工具Rye的工作原理

    在开发Python项目时,有时会在一台电脑上,同时存在多个python项目,而且每个项目的python版本和依赖可能都不一样,此时需要使用python项目管理工具来进行管理,rye是一个python项目管理工具,本文简单介绍rye的工作原理
    2023-07-07
  • 学好python基本数据类型

    学好python基本数据类型

    这篇文章主要介绍了学好python基本数据类型,学习python基本数据类型我们需要了解基本数据类型有数字int、布尔值bool、字符串str、列表list、元组tuple、字典dict等,其中包括他们的基本用法和其常用的方法,下面来看看文章的具体介绍吧
    2021-12-12
  • python实现求两个字符串的最长公共子串方法

    python实现求两个字符串的最长公共子串方法

    今天小编就为大家分享一篇python实现求两个字符串的最长公共子串方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • tensorflow 实现数据类型转换

    tensorflow 实现数据类型转换

    今天小编就为大家分享一篇tensorflow 实现数据类型转换,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • VSCode中Python venv环境加载失败的5大原因及解决方案

    VSCode中Python venv环境加载失败的5大原因及解决方案

    本文详细探讨了VSCode中Python虚拟环境加载失败的常见原因及解决方法,包括解释器选择、环境配置、路径设置、解释器优先级和配置文件管理等方面,通过实际案例和配置示例,提供了从零创建可被VSCode识别的venv环境的实践步骤,需要的朋友可以参考下
    2026-03-03
  • 使用Python和XML实现文件复制工具的完整代码

    使用Python和XML实现文件复制工具的完整代码

    在本篇博客中,我们将学习如何使用 wxPython 构建一个简单的文件复制工具,并将文件路径和目标目录的配置信息保存到 XML 文件中,通过这种方式,我们可以在下次运行程序时轻松加载之前保存的配置,需要的朋友可以参考下
    2024-08-08
  • Python实现向好友发送微信消息

    Python实现向好友发送微信消息

    利用python可以实现微信消息发送功能,怎么实现呢?你肯定会想着很复杂,但是python的好处就是很多人已经把接口打包做好了,只需要调用即可,今天通过本文给大家分享使用 Python 实现微信消息发送的思路代码,一起看看吧
    2022-06-06
  • python文件的md5加密方法

    python文件的md5加密方法

    这篇文章主要介绍了python文件的md5加密方法,涉及Python针对文件的读取与字符串加密的相关技巧,需要的朋友可以参考下
    2016-04-04

最新评论