Jmeter通过OS进程取样器调用Python脚本实现参数互传

作者:Jarthong 时间:2022-07-09 18:43:27 

1、 Python中 sys.argv的用法解释:sys.argv可以让python脚本从程序外部获取参数,sys.argv是一个列表,可用[]提取其中的元素,其第一个元素是程序本身,随后才依次是外部给予的参数,可以接受多个参数,每个参数用空格隔开即可。

'''该脚本用于jmeter的OS进程提取器的调用'''
import hashlib
import sys
import time
 
parameter = sys.argv
# print(parameter, type(parameter))
 
def password_srt(pubkey,  password):
    time_str = str(time.time())
    sign_str = pubkey + time_str + password
    sign = hashlib.md5(sign_str.encode('utf-8')).hexdigest()
    res = {'sign': sign, 'pubkey': pubkey, 'password': password}
    # print()的内容可被jmeter接收,可以在jmeter中对其相关参数进行提取。
    print(res)
    return res
 
if __name__ == '__main__':
    password_srt(parameter[1], parameter[2])

比如在cmd中调用上面的Python脚本并传入两个参数:

Jmeter通过OS进程取样器调用Python脚本实现参数互传

 注意:脚本中print()的内容都可被jmeter接收,可以在jmeter中使用正则表达式提取器对相关参数进行提取。

 2、新增一个.bat文件,具体命令内容:python E:\python_project\Python-Auto\python_jmeter\jmeter_os_process.py %1 %2 【%1 %2表示将2个参数传递给python文件(或者使用%1 %1 也是表示传两个参数)】。

Jmeter通过OS进程取样器调用Python脚本实现参数互传

3.通过JMeter的OS Process Sampler组件读取批处理文件,其实就是执行编写的python脚本。

(1)通过以下路径在jmeter中添加【OS进程取样器】:

Jmeter通过OS进程取样器调用Python脚本实现参数互传

(2)①在【命令】输入框中填入.bat文件的路径,比如:E:\python_project\Python-Auto\python_jmeter\jmeter_os_process.bat

②在【命令行参数】添加【值】,根据这里传几个值,.bat文件就需要填传入几个值,比如两个为%1 %2

③【命令行参数】添加【值】的,可以使用变量,比如引用jmeter参数化的变量;

Jmeter通过OS进程取样器调用Python脚本实现参数互传

4、使用【正则表达式提取器】对python脚本中打印出来的参数进行提取,以供jmeter使用。(一个正则表达式提取器只能提取一个参数,要提取多个参数可以使用多个提取器)

Jmeter通过OS进程取样器调用Python脚本实现参数互传

 5、比如在接口请求中使用提取到的参数:

Jmeter通过OS进程取样器调用Python脚本实现参数互传

来源:https://blog.csdn.net/jarthong/article/details/123676024

标签:Jmeter,python,参数,互传
0
投稿

猜你喜欢

  • 2020最新pycharm汉化安装(python工程狮亲测有效)

    2021-08-16 15:41:57
  • 配置SQL Server 2000选项

    2010-04-25 11:01:00
  • python合并RepeatMasker预测结果中染色体的overlap区域

    2021-12-28 21:29:35
  • python之json文件转xml文件案例讲解

    2021-11-18 04:54:23
  • pandas 转换成行列表进行读取与Nan处理的方法

    2021-10-24 14:27:41
  • flask框架路由常用定义方式总结

    2021-04-18 22:12:29
  • 教你如何看懂SQL Server查询计划

    2024-01-12 21:10:41
  • Python字符串的索引与切片

    2021-08-17 23:46:00
  • Python计算机视觉里的IOU计算实例

    2021-12-07 18:15:10
  • 关于PyTorch 自动求导机制详解

    2022-03-07 14:33:02
  • python 读取文件并替换字段的实例

    2022-10-18 05:12:21
  • autojs 蚂蚁森林能量自动拾取即给指定好友浇水的实现方法

    2024-04-30 10:10:44
  • 怎么样在网页上读取远程xml的数据

    2008-10-10 17:43:00
  • golang中使用sync.Map的方法

    2024-02-08 13:50:40
  • fckeditor 修改记录添加行距功能插件

    2022-04-20 23:05:23
  • mysql8.0.30安装配置最详细教程(windows 64位)

    2024-01-16 10:01:35
  • 趣味Python实战练习之自动更换桌面壁纸脚本附源码

    2021-11-03 09:12:33
  • 做购物车系统时利用到得几个sqlserver 存储过程

    2024-01-13 10:05:48
  • python中将字典转换成其json字符串

    2023-10-16 23:46:41
  • Golang 中 omitempty的作用

    2024-04-25 15:13:03
  • asp之家 网络编程 m.aspxhome.com