jmeter進階之Beanshell引用Java代碼


在Jmeter實際的使用中,根據業務往往需要構造一些數據源,比如虛擬用戶的賬號信息等,為了快速靈活,較好的方式往往是通過代碼來輔助生產數據。
故在Jmeter支持的眾多 sampler 或 前/后置處理器 中,一般借助 Beanshell(推薦) 或 JSR223 等來實現。(源碼示例為隨機生成中國地區的手機號)


對於 Beanshell,一般調用 Java 源碼的方式有三種:

  • 通過 beanshell sampler or PreProcesser or PostProcesser 直接進行 Java 編碼
  • 通過 beanshell sampler or PreProcesser or PostProcesser 引入本地 Java 源碼文件
  • 通過導入的 jar 包,在beanshell sampler or PreProcesser or PostProcesser 中進行源碼的調用(推薦)

方法一:通過 beanshell sampler 直接進行 Java 編碼

方法二:通過 beanshell 引入本地 Java 源碼文件

如圖示,先將源代碼存放在本地的目錄,然后通過 beanshell 的關鍵字加載之。

#加載源碼文件
source("/Users/hailongchen/Documents/workspace/hailongchen/src/main/java/utils/PhoneNoGenerateUtil.java");
#調用源碼程序(略)
#使用 beanshell 存/取 變量
vars.put();
vars.get();

方法三:通過導入的 jar 包,在beanshell sampler中進行源碼的調用

Demo如圖示:

具體步驟參考:

  1. 先通過 jdk 的命令或者借助 IDE 編譯器的功能,生成 jar 包(一般不需要生成可執行 jar 包)

  2. 將 jar 包放入 jmeter 的目錄,並修改 jmeter.properties 文件(自行度娘)

  3. 啟動 jmeter,在測試計划中,導入 jar 路徑(該步驟可能不需要,可測試確認)

  4. 創建 beanshell 組件,按需引用源碼(需要注意源碼的 package 路徑,圖示為源碼在 package 名稱為 utils,類文件名稱為 PhoneNoGenerateUtil)

  5. 在 Beanshell 中調用 所引用 jar包的代碼(見 demo)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM