开发者

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

目录
  • jmeter用python实现请求参数的随机
    • 放置完成后需要重启jmeter
    • 选择第一项
    • 在http请求中添加
  • 总结

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

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

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

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

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

    放置完成后需要重启jmeter

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

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

    选择第一项

    添加python脚本

    脚本中metrics_ids3和metrics_weidu3的值为列表

    import json  
    import random  
      
    # 原始的metrics id和维度列表  
    m***s_ids = ${metrics_ids3}
    m***s_weidus=${metrics_weidu3}
      
    # 生成随机组合的函数  
    javascriptdef generate_random_combination(ids):  
     return random.sample(ids, random.randint(1, len(ids)))  
      
    # 生成随机组合指标和维度
    chosen_jsm***s_ijsds = 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": {  
            javascript"statTime": "m***",  
            "beginTime": "202*-02",  
            "endTimewww.devze.com": "202*-01"  
        },  
        "printSql": False,  
        "pageNum": -1  
    }  
      
    # 将整个body转换为JSON格式的字符串  
    body_json = json.dumps(body)  
      
    # 将body_json设置为JMeter变量  
    vars.put("requestBodyJson", body_json)

    在http请求中添加

    body${requestBodyJson}

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

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

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜