一、引用外部java文件:
1、假如我有一個java 源文件,名為:Myclass.java,代碼如下:

package test;
public class Myclass
{
public int add(int a, int b)
{
return a + b;
}
}

2、Bean Shell使用代碼如下:
在bean shel中通過source("代碼路徑")方法引入java,然后調用方法和java一樣,new一個class,再調用里面的add 方法。
3、運行結果:
二、引用外部class文件:
現在知道如何引用外部文件,有時候如果我們只有class文件怎么辦呢?其實在jmeter中也可以直接引用class文件,示例如下:
1、直接把上例中的java文件編譯成class文件,如何編譯請自行百度。
2、Bean Shell使用代碼如下:
用addClassPath("D:\\")方法引入 class文件,再用import導入包及類,然后就可以像java一樣調用了
3、運行結果:
三、引用外部Jar包:
上面一、二介紹了如何引用外部java和class文件,如果文件比較多時我們可以把它們打成一個jar包然后在jemter中調用。
在這里想補充一點的是jmeter中引入jar的方法:
1、上一篇中已使用過的:把jar包放到jmeter目錄\apache-jmeter-2.13\lib\ext下
2、在Test Plan的右側面板最下方直接添加需要引用的jar包,如下圖:
四、其它用法:
1、在Test Plan中定義如下三個變量:

2、Bean Shell可腳本如下:
a、bean shell可以接受傳入參數,如下圖:${u1} ${u2} ${u3}
b、參數可以通過bsh.args[]按順序提取
c、bean shell提供了一個內置變量Parameters,來保存參數的集合
3、運行結果:
下圖中1輸入的這兩句設置:
ResponseCode = 500;
ResponseMessage = "This is a test";
下圖中2輸入的這兩句設置:
log.info(Parameters);
log.info(Label);
//獲取參數傳遞過來的值並存入變量中
vars.put("v1",bsh.args[0]);
vars.put("v2",bsh.args[1]);
vars.put("v3",bsh.args[2]);
獲取參數傳遞過來的變量集合
vars.put("v4",Parameters);
//輸出該元件的name
log.info(Parameters);
log.info(Label);
//設置響應代碼
ResponseCode=500;
//設置響應信息
ResponseMessage="This is a test";
//設置是否成功
IsSucces=false;
//設置響應數據
SampleResult.setResponseData("Hello world");