loadrunner介面效能測試分享
阿新 • • 發佈:2019-01-23
最近做了一次java指令碼的lr效能測試
不過後來直接用eclipse進行了一次模擬,感覺也不錯
先說lr
選擇JavaVuser
之後 會生成指令碼如下:
*/
import lrapi.lr;
public class Actions
{
public int init() throws Throwable {
return 0;
}//end of init
public int action() throws Throwable {
return 0;
}//end of action
public int end() throws Throwable {
return 0;
}//end of end
}
在你的指令碼中增加
*/
import lrapi.lr;
public class Actions
{
public int init() throws Throwable {
return 0;
}//end of init
public int action() throws Throwable {
lr.start_transaction("b2b"); //增加資料 統計
//在這裡增加你的程式碼即可
//增加判斷邏輯
if(!(responseString ==null)&&responseString.contains("recharge failed")){
lr.end_transaction("b2b", lr.PASS);
}else{
lr.end_transaction("b2b", lr.FAIL);
}
return 0;
}//end of action
public int end() throws Throwable {
return 0;
}//end of end
}
在這裡增加你的jar即可
根據tps公式,用eclipse模擬如下:
public class ThreadTest {
public static int threadCount=20;//啟動執行緒數量
public static int threadExcuteCount=1000000;//每個執行緒執行任務次數,沒有數量的時候設定為999999999預設無窮大
public static int average; //每個任務執行的平均耗時
public static float tps; //瞬時tps
public static int allhits=threadCount*threadExcuteCount; //總執行任務數量
public static void main(String[] args) {
for (int i = 0; i <threadCount; i++) {
Thread th= new Thread(new Runnable1());
th.setName("測試執行緒"+i);
th.start();
}
}
}
class Runnable1 implements Runnable{
public void run() {
for (int i = 0; i < 1000; i++) {
long startTime=System.currentTimeMillis();//記錄開始時間
// CbApplyPayShortcut_DEBITCARD test = new CbApplyPayShortcut_DEBITCARD();
// test.main(null);
cbPreAuthDirect test = new cbPreAuthDirect();
try {
test.main(null);
} catch (Exception e) {
// TODO: handle exception
}
System.out.println("");
long endTime=System.currentTimeMillis();//記錄結束時間
float excTime=(float)(endTime-startTime);
ThreadTest.tps=(float)ThreadTest.threadCount*(1000/excTime);
try {
Thread.sleep(200000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// System.out.println(Thread.currentThread().getName()+"||當前執行緒執行次數:"+i+"||耗時為:||"+excTime+"||TPS=||"+ThreadTest.tps+"||執行結果:"+test.flag);
System.out.println("++++++++++++++++++++++++++++++++++++++++++");
}
}
}