jmeter--7.BeanShell

这篇具有很好参考价值的文章主要介绍了jmeter--7.BeanShell。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. beanshell常用语法

1.1 log:日志写入

1.2 vars:设置和引用局部变量(同线程组)

1.3 props:设置和引用全局变量(跨线程组)

1.4 prev:获取前一个请求返回的信息

2. beanshell调用java代码

2.1 beanshell直接调用java文件(针对单个文件)

2.2 beanshell直接调用jar包

3. beanshell调用python代码

3.1 beanshell调用无参函数

3.2 beanshell调用有参数的函数


1. beanshell常用语法

1.1 log:日志写入

log.info("测试");         //打印字符串
log.info(123+"");        //打印数字需要拼接一个字符串,因为无法直接打印int
log.error("打印错误日志");    //打印错误日志使用error    
System.out.println("java打印")  //java打印,在控制台输出

输出结果jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

1.2 vars:设置和引用局部变量(同线程组)

  • 通过用户自定义变量赋值,然后通过log.info(vars.get("key")); 的方式获取

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

  • 通过提取器的方式获取需要的值

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

  • 通过【vars.put("age","18"); 】进行设置变量,通过【log.info(vars.get("age"));】获取变量。可以是不同的BeanShell 取样器也可以使用beanshell处理器进行

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

1.3 props:设置和引用全局变量(跨线程组)

props.put("name","张三"); //设置值
log.info(props.get("name")); //获取值--跨线程组

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

1.4 prev:获取前一个请求返回的信息

log.info(prev.getResponseCode()+"");  //获取上一个请求的响应码
log.info(prev.getResponseDataAsString());  //获取上一个请求的响应结果数据

2. beanshell调用java代码

2.1 beanshell直接调用java文件(针对单个文件)

java代码内容

package test;

public class Test {
   
   public int add(int a,int b) {
         return a+b;
   }

}

调用方法

  • 将java文件放入指定路径中,然后通过beanshell调用文件路径
  • 调用java代码并传值输出
source("D:/study/course/Jmeter/Test.java");   //通过source()引入java文件,这里的路径需要转义
int result = new Test().add(3,5);   //创建一个对象,并且调用它的方法
log.info("调用java打印结果为:"+result+"");   //打印

打印结果

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

2.2 beanshell直接调用jar包

在测试计划中引入jar包

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

调用方法

import test.Test;  //导包
int result = new Test().add(5,1); //创建一个对象,并且调用它的方法
log.info("调用java打印结果为:"+result+""); //打印

打印结果

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

3. beanshell调用python代码

3.1 beanshell调用无参函数

python代码内容

import random

def get_random():
    rd = str(random.randint(1,100))
    print(rd)

if __name__ == "__main__":
    get_random()

调用方法

import java.io.BufferedReader;  //导包
import java.io.InputStreamReader;

String command = "cmd /c python D:/study/course/Jmeter/test.py";  //组建cmd命令并执行py文件
Runtime rt = Runtime.getRuntime(); //初始化一个运行时对象
Process pr = rt.exec(command); //通过运行时对象运行cmd命令。

pr.waitFor();  //运行时等待

//调用pr进程对象获取到它的输入流。读取pr文件流的内容,并且保存到reponse_data
BufferedReader br = new BufferedReader(new InputStreamReader(pr.getInputStream()));
StringBuilder response = new StringBuilder();
String line = "";
while((line=br.readLine())!=null){
    response.append(line);
};
String reponse_data = response.toString();
br.close();
log.info("通过python代码获取到的随机数:reponse_data:"+reponse_data);//打印返回的内容

 打印结果

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python

3.2 beanshell调用有参数的函数

python代码内容

def get_random():
    #接收cmd命令里面的参数
    parse = argparse.ArgumentParser()
    parse.add_argument("-t","--ticket")
    args = parse.parse_args()
    ticket = args.ticket
    #随机数
    times=str(int(time.time()))
    print(ticket+times) #打印

if __name__ == "__main__":
    get_random()

 调用方法-与无参数的区别就是在组建cmd命令并执行py文件时加一个参数的写入

import java.io.BufferedReader;  //导包
import java.io.InputStreamReader;

String command = "cmd /c python D:/study/course/Jmeter/test.py -t test--";  //组建cmd命令并执行py文件
Runtime rt = Runtime.getRuntime(); //初始化一个运行时对象
Process pr = rt.exec(command); //通过运行时对象运行cmd命令。

pr.waitFor();  //运行时等待

//调用pr进程对象获取到它的输入流。读取pr文件流的内容,并且保存到reponse_data
BufferedReader br = new BufferedReader(new InputStreamReader(pr.getInputStream()));
StringBuilder response = new StringBuilder();
String line = "";
while((line=br.readLine())!=null){
    response.append(line);
};
String reponse_data = response.toString();
br.close();
log.info("通过python代码获取到的随机数:reponse_data:"+reponse_data);//打印返回的内容

打印结果

jmeter--7.BeanShell,测试工具,jmeter,学习,测试用例,开发语言,java,python 文章来源地址https://www.toymoban.com/news/detail-808825.html

到了这里,关于jmeter--7.BeanShell的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 压力测试与测试工具jmeter的介绍

    目录 一、性能指标 二、jmeter (一)JMeter 安装 (二)JMeter 压测示例 1、添加线程组 2、添加 HTTP 请求  3、添加监听器 4、启动压测查看分析结果 (三)JMeter Address Already in use 错误解决   压力测试考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在。压测

    2024年02月14日
    浏览(50)
  • 测试工具jmeter使用

    一、概述 官网:Apache JMeter - Download Apache JMeter 二、安装 1、下载 Windows版本下载zip,Linux版本下载tgz,一般下载Binaries(Source含有源码)。 2、安装 下载后无需安装,解压后即可使用。 3、配置环境变量: jmeter环境变量配置如下: 1)新增JMETER_HOME变量,注意:变量值为你下载后

    2024年02月05日
    浏览(45)
  • Jmeter-压力测试工具

    1s内发送大量请求,模拟高QPS,用以测试网站能承受的压力有多大 Jmeter依赖于JDK,所以必须确保当前计算机上已经安装了JDK,并且配置了环境变量。 可以Apache Jmeter官网下载,地址:http://jmeter.apache.org/download_jmeter.cgi 或者直接用这个提供好的旧版本: 链接:https://pan.baidu.com

    2024年02月13日
    浏览(58)
  • 初识性能测试工具Jmeter

    (1)Jmeter下载地址:https://jmeter.apache.org/download_jmeter.cgi; (2)Java运行环境下载地址:https://www.oracle.com/java/technologies/downloads/; (3)JAVA尽量配置到环境变量中去; (4)Jmeter解压出来; (1)Windows的点击jmeter/bin/下的jmter.bat; (2)mac和linux点击jmeter.sh; (3)点击Options—

    2023年04月08日
    浏览(62)
  • 测试工具--JMeter的使用

    1、JMeter是什么      Apache组织使用Java开发的一款测试工具 2、功能 用于对服务器、网络或对象模拟巨大的负载 通过创建 带有断言的脚本 来验证程序是否能返回期望的结果 3、优点 开源免费,可以自己拓展jmeter的功能 跨平台,在不同平台上运行 支持多协议  http协议、tcp协

    2024年02月05日
    浏览(63)
  • 测试工具JMeter的使用

    目录 JMeter的安装配置 测试的性能指标 TPS 响应时长 并发连接 和 并发用户 CPU/内存/磁盘/网络 负载 性能测试实战流程 JMeter JMeter快速上手 GUI模式 运行 HTTP请求默认值 录制网站流量 模拟间隔时间 Cookie管理器 消息数据关联 变量 后置处理器 CSV 数据文件设置 断言 循环控制器 预

    2024年02月01日
    浏览(57)
  • JMeter性能测试工具详解

    1、JMeter简介 Meter 是轻量级的接口性能测试工具,同时具备一定程度的接口自动化测试能力。 JMeter 支持多协议,其中较适合测试使用公有协议(如 HTTP、JDBC 等)的服务或模块,特别适合 B/S 结构的后台性能系统。 JMeter 有大量第三方插件,也可以比较方便的编写适合自己使用

    2023年04月08日
    浏览(61)
  • JMeter测试工具设置中文

    在JMeter中,默认情况下是英文的,如果需要使用中文进行测试,则需要进行如下设置: 在JMeter运行时界面的“Options”菜单中,选择“Choose Language”,然后选择“中文(中国)”。此时JMeter界面的文字将会变为中文。 需要注意的是这个方法是 临时性 的,在下一次重新打开J

    2024年02月03日
    浏览(51)
  • 自动化测试工具之 Jmeter性能测试

    1.性能测试概念: 通过自动化测试工具模拟多种正常,峰值以及异常负载条件来对系统的各项性能指标进行测试 2.性能测试条件 系统基础功能测试验证完成 系统趋于稳定 3.性能测试基本流程 需求分析 (1)系统信息调研 (2)业务信息调研 (3)性能需求评估   判断是否进行

    2023年04月09日
    浏览(70)
  • 性能测试—Jmeter工具

    开源平台 :metersphere 1. 术语介绍 响应时间(Response time) :对请求作出响应所需要的时间。 在互联网上对于用户响应时间,有一个普遍的标准。 2/5/10秒 原则。 并发用户数(concurrent users) :在同一时间段内访问系统的用户数量。 吞吐量(Throughput) :单位时间内系统处理的客户请求

    2024年02月13日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包