beanshell_讲解 admin 2023-05-26 11:06:02 篇首语:本文由小编为大家整理,主要介绍了beanshell_讲解相关的知识,希望对你有一定的参考价值。 Beanshell请求—beanshell请求① 勾选每次调用前重置,里面定义的变量就会被重置。② 脚本文件可以导入beanshell脚本注意:在idea写错误有提示写完了在拷贝到beanshell里运行脚本—运行结果在cmd里显示—print 在jmeter日志里显示—log.info(变量名); Jmeter添加变量—beanshell添加变量后面请求用${变量}启动jar包test-json-1.0-SNAPSHOT-fan — cmd执行命令切换到jar的目录,然后执行命令java -jar test-json-1.0-SNAPSHOT-fan.jar启动后输入网址:http://localhost:8090/test_json 下面举例写展示当前日期:开发给个接口需要传递当前时间格式为yyyy-MM-dd HH:mm:ssBeanshell写代码import java.util.*;import java.text.*;Date d = new Date();DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String dateStr = df.format(d);vars.put("current_date",dateStr); //给jmeter添加一个变量,内置变量查看结果:添加一个请求(上面启动的jar包)—查看结果 添加变量后跨请求取值 —Date传值成功jmeter两种变量1、函数助手2、变相的自定义函数第一种:import java.util.*;import java.text.*; getDateStr(String format) {DateFormat df = new SimpleDateFormat(format);return df.format(new Date()); }dateStr = getDateStr("yyyy-MM-dd");vars.put("date",dateStr);第二种:import java.util.*;import java.text.*;Date d = new Date();DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String dateStr = df.format(d);vars.put("current_date",dateStr); //给jmeter添加一个变量,内置变量在Debug Sampler里查看结果 jmeter引用java文件,记事本编辑一段java代码 ,要在控制面板—文件夹选项—查看—把隐藏已知文件扩展名得选项勾选,然后就可以改txt文件为java文件了 source("C:\\Users\\Administrator\\Desktop\\Test.java"); //引进java文件只能引用java文件不能引用jar包 beanshell代码source("C://Users//Administrator//Desktop//Test.java");Test test = new Test();String str = test.hello("jiajia");vars.put("hi",str) 结果: Jmeter-导入外部jar包步骤为:·在eclipse写好代码,然后把该类打成jar包(在类上点击右键->Export->jar file)·把jar包放到jmeter目录\apache-jmeter-2.13\lib\ext下·打开jmeter,添加一个http sampler,在sampler下添加一个BeanShell Sampler。·在BeanShell中的头文件中导入该jar包,例import testmail.src.hyq.utils.*Jmeter-常用内置变量1、log:写入信息到jmeber.log文件,使用方法:log.info(“This is log info!”);打印日志2、ctx(JMeterContext):该变量引用了当前线程的上下文。3、vars(JMeterVariables) :操作jmeter变量,常用方法:a) vars.get(String key):从jmeter中获得变量值b) vars.put(String key,String value):数据存到jmeter变量中vars.get()--从上一个http请求里正则提取器变量,用这个方法在获取到_定义个全局变量,下面引用他 props - (JMeterProperties):解决两个线程组传递参数开发返回接口json方式—如何写断言、和提取值http://www.bejson.com/jsoneditoronline/ 在线json格式工具 把下面内容拷贝进去{"result":{"birthday":{"month":"12","year":"1654","day":"20"},"side":"front","address":"北京市东城区景山前街4号紫禁城敬事房","race":"汉","gender":"男","legality":{"Temporary ID Photo":0,"Screen":0,"Edited":0.991,"Photocopy":0,"ID Photo":0.009},"head_rect":{"rb":{"x":0.93333334,"y":0.7379679},"rt":{"x":0.93333334,"y":0.16042781},"lb":{"x":0.62,"y":0.7379679},"lt":{"x":0.62,"y":0.15508021}},"name":"韦小宝","id_card_number":"11204116541220243*","request_id":"1504184189,7d75096e-f9bb-49ee-83e2-f4070ca7e14c","time_used":425},"bizNo":"123456","serviceCode":"000082"}提取json $.result.name[0]第一个值json $.result.name[1]第二个值 在上面获取值。练习:查看结果树里的形式 5、prev - (SampleResult):获取前面的sample返回的信息,常用方法: a) getResponseDataAsString():获取响应信息 b) getResponseCode() :获取响应code c) setDataEncoding(String dataEncoding) :设置响应结果的编码以上是关于beanshell_讲解的主要内容,如果未能解决你的问题,请参考以下文章 sql里日期怎么加减 DataRowStateAcceptChangesRejectChanges综合使用示例:实现DataGridView数据的增删改 您可能还会对下面的文章感兴趣: 相关文章 浏览器打不开网址提示“ERR_CONNECTION_TIMED_OUT”错误代码的解决方法 如何安装ocx控件 VMware的虚拟机为啥ip地址老是自动变化 vbyone和EDP区别 linux/debian到底怎么重启和关机 苹果平板键盘被弄到上方去了,如何调回正常? 机器学习常用距离度量 如何查看kindle型号