zoukankan      html  css  js  c++  java
  • jmeter之beanshell使用

    beanshell官网:http://www.BeanShell.org/

    一.beanshell介绍

    • 是一种完全符合Java语法规范的轻量级的脚本语言;
    • 相当于一个小巧免费嵌入式的Java源代码解释器,可直接运行源代码,不需要编译,支持对象式的脚本语言特性;
    • 执行标准Java语句和表达式,,并且拥有自己的一些语法和方法;

    1.常用操作变量

    vars:BeanShell脚本使用“ vars ”变量的get()和put()方法存取JMeter 变量

    • vars.get("name"):从jmeter定义变量name中获得变量值,get(String key)方法只支持字符串值的变量
    • vars.put(String key,String value):获取到的值"value"存到变量"key"中,jmeter参数引用变量key获得值value
    • vars.putObject("obj",new Object()):用法同vars.put(String key,String value)方法

    log:写入信息到jmeber.log文件,

    • log.info(“This is log info!”):用来记录日志文件,写入到jmeber.log文件,可以设置日志等级

     

    prev:获取sample返回的信息,用于断言、关联下个接口

    • prev.getResponseDataAsString():获取响应信息
    • prev.getResponseCode() :获取响应code

     

    2.beanshell用法

    自定义函数

    在BeanShell中,可以使用java语言来编写特定的逻辑,结合BeanShell的内置对象进行变量的存取,

     

    引用外部java文件

    在beanshel通过source("路径+文件名")方法引入java文件,路径使用两个\,调用方法同java语法一样

     

    引用外部class文件

    用addClassPath("E:\")方法引入 class文件,添加路径时使用“盘符:\”即可,会自动搜索到class文件,用import导入包.类名,如下

     

    引用外部Jar包

    把jar包放到jmeter目录libext下,或者直接引用jar包,如下图添加,用import导入包.类名

     

     

    二.beanshell使用

    1.定时器:BeanShell Timer

    调用sleep()方法

     

    2.前置处理器:BeanShell PreProcessor

    可以对接口进行加密处理,如登录密码,加密后的字符串传入后端,后端也要有相应的解密处理

     

    3.采样器:BeanShell Sampler

     

    4.后置处理器:BeanShell PostProcessor

    通过prev内置变量获取响应内容

    • prev.getResponseDataAsString():获取响应信息
    • prev.getResponseCode() :获取响应code

     

     

    5.断言:BeanShell断言

    通过Failure和FailureMessage来设置断言结果

    • Failure = false;  表示断言成功 
    • Failure = true;  表示断言失败
    • FailureMessage = "自定义返回断言结果消息";   

     

    6.监听器:BeanShell Listener

     待续

     

  • 相关阅读:
    VC中隐藏和显示IDC_STATIC
    在VC++中使用Tab Control控件
    关于CTreeView中CTreeCtrl空间的使用
    MFC打开/保存文件对话框:CFileDialog
    Python自学笔记3-数据类型
    MFC实现原理
    VS2008 MFC内部工作原理
    MFC视频教程(孙鑫)学习笔记2-掌握C++
    MFC视频教程(孙鑫)学习笔记1-Windows程序内部运行原理
    error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”
  • 原文地址:https://www.cnblogs.com/cty136/p/11335092.html
Copyright © 2011-2022 走看看