zoukankan      html  css  js  c++  java
  • jmeter压测学习38-通过Jython调用Python脚本

    前言

    前面在 BeanShell 里面是通过 java 脚本实现请求的预处理,jmeter里面也可以调用python的脚本,需安装 jython.jar 的插件.
    Jython 是 Python 的纯 Java 实现。她无缝地结合了 Java 类与 Python,使用户能以 Python 语言的语法编写在 Java 虚拟机上运行的 软件

    Jpython

    Jython 是 Python 的纯 Java 实现。她无缝地结合了 Java 类与 Python,使用户能以 Python 语言的语法编写在 Java 虚拟机上运行的 软件。
    它的特点有:与相似的 Java 程序相比,Jython 极大的的减少了编程代码量。Jython 同时拥有解释器和编译器,使其无需编译就可以测试程序代码。

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

    下载 Jython Standalone 版本

    把下载的Jython 的jar包放到 jmeter的lib文件夹。重启jmeter

    JSR223 Sampler

    添加-取样器-JSR223 Sampler

    选择 jython2.7 版本,在Script区域写相应的代码,注意这里的语法是支持python2.7的,3.x的语法不支持。

    
    # 获取jmeter 参数
    user = vars.get("user")
    print "hello"
    
    # 输出日志
    log.info(u"获取到的变量user:" + user)
    
    
    # 设置响应信息
    SampleResult.setResponseData("return message");
    SampleResult.setResponseCode("502")
    SampleResult.setSuccessful(False)
    

    变量获取与日志

    前面定义了用户变量 user, 变量的获取依然用 vars.get('var name') 获取。
    这里print的内容无法输出到屏幕,可以用log.info() 输出日志内容

    设置响应

    通过SampleResult对象设置响应的结果

    # 设置响应信息
    SampleResult.setResponseData("return message");
    SampleResult.setResponseCode("502")
    SampleResult.setSuccessful(False)
    

    也可以返回自定义的结果

  • 相关阅读:
    mysql初识(五) 统计与计算与时间
    mysql初识(四)添加/修改字段信息
    mysql初识(二) 基础的查询语句
    mysql初识(三)修改表结构
    mysql初识(一)基础属性篇
    在Ubuntu上安装Docker Engine
    使用PowerDesigner对NAME和COMMENT互相转换
    mysql 5.1.34
    debian7下安装eclipse
    让 Visio 2003/2007 同时开多个独立窗口
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/14265935.html
Copyright © 2011-2022 走看看