1. 程式人生 > >性能測試九:jmeter進階之beanshell的使用+斷言

性能測試九:jmeter進階之beanshell的使用+斷言

步驟 參數 日誌 toc data .get sam pat 內置變量

一、使用

BeanShell使用方式一

BeanShell面板上寫腳本

// 從vars中獲取用戶定義的參數,並轉換為int類型

int p_skuId = Integer.parseInt(vars.get("p_skuId"));

// 進行邏輯判斷,如果是偶數,保存一個參數p_opt,值為“Rick”;如果是奇數,值為“Glen”

if (p_skuId % 2 == 0){

  vars.put("p_opt","Rick");

}else{

  vars.put("p_opt","Glen");

}

技術分享圖片

技術分享圖片技術分享圖片技術分享圖片

技術分享圖片

BeanShell使用方式二

引用外部java文件 步驟:

//引用外部java文件

source("D:\\md5\\Md5Util.java");

//獲取出原來的p_opt參數

String str_opt = vars.get("p_opt");

//調用Md5Util類中的getMd5Hex方法,將str_opt加密

String md5_opt = Md5Util.getMd5Hex(str_opt);

//將加密後的參數重新保存為一個mdt_opt參數,並放到vars中

vars.put("md5_opt",md5_opt);

技術分享圖片技術分享圖片

BeanShell使用方式三

引入外部jar包 步驟:

1.“測試計劃”裏,Add directory or jar to classpath

2.import 所需要的類名

//導入類名

import com.lee.util.Md5Util;

//獲取出原來的p_opt參數

String str_opt = vars.get("p_opt");

//調用Md5Util類中的getMd5Hex方法,將str_opt加密

String md5_opt = Md5Util.getMd5Hex(str_opt);

//將加密後的參數重新保存為一個mdt_opt參數,並放到vars中

vars.put("md5_opt",md5_opt);

技術分享圖片

二、斷言

內置變量

Failure:是否失敗,boolean類型
FailureMessage:失敗日誌,在斷言失敗時顯示
例:
int stock = Integer.parseInt(vars.get("p_stock"));
if (stock > 1500){
  Failure = true;
  FailureMessage = "庫存數量超過了1500";
  // ResponseData是服務器返回的byte[]類型的數據,如果想打印,必須轉換為String類型的,用new String(ResponseData)
  log.info(new String(ResponseData));
  //打印當前請求的url, SamplerData是String類型的數據
  log.info(SamplerData);
  }

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

性能測試九:jmeter進階之beanshell的使用+斷言