JavaVuser腳本開發-環境搭建

衆所周知,loadrunner能夠使用多種協議進行性能測試。這裏不得不提到JavaVuser協議。 java

你是否已經厭煩了在loadrunner腳本開發中,使用各類c函數進行復雜的字符串拼接,解析報文? git

那麼爲何不使用loadrunner提供的JavaVuser協議開發基於java的腳本呢。 api

1.前提

能夠直接使用Java提供的邏輯代碼的場景。 函數

2.環境

loadrunner11.0 性能

jdk1.6.32_x86_32 測試

3.新建腳本

選擇JavaVuser協議 ui

4.設置Java環境

Vuser--RunTime Settings 編碼

5.編寫JavaVuser腳本

下面這段腳本主要是模擬經過url路徑訪問一個應用的頁面,返回首頁內容的操做。 url


/*
 * LoadRunner Java script. (Build: _build_number_)
 * 
 * Script Description: JavaVuser訪問頁面
 *
 * creator:jeffsui
 *
 * Create Time:2014-04-15
 *                     
 */

import java.io.InputStream;
import java.io.OutputStreamWriter;
import java.net.URL;
import java.net.URLConnection;

import lrapi.lr;

public class Actions
{

	public int init() throws Throwable {
		return 0;
	}//end of init


	public int action() throws Throwable {

            /***訪問首頁事務*/
	    lr.start_transaction("訪問GitBucket首頁");

	    String serverUrl="http://localhost:8026/gitbucket";//請求頁面url路徑
	    OutputStreamWriter out =null;
	    try {
		URL url =new URL(serverUrl);
		URLConnection conn = url.openConnection();.//創建鏈接
		conn.setDoInput(true);
		conn.setDoOutput(true);
		conn.setRequestProperty("Content-Type","UTF-8");//設置請求字符編碼
		out=new OutputStreamWriter(conn.getOutputStream(),"UTF-8");//設置迴應字符編碼
		out.flush();
		out.close();
		InputStream in =conn.getInputStream();
		byte[] buffer= new byte[in.available()];
		in.read(buffer);
		System.out.println(new String(buffer));
		} catch (Exception e  ) {
		    e.printStackTrace();
	    }finally{
                if(out!=null){
                    try {
                        out.close();
                    } catch (Exception e  ) {
                            e.printStackTrace();
                        }

                }

	    }
            
	    lr.end_transaction("訪問GitBucket首頁", lr.AUTO);

		return 0;
	}//end of action


	public int end() throws Throwable {
		return 0;
	}//end of end
}


6.編譯


編譯經過 spa


No errors detected




7.執行腳本


Starting iteration 1.
Starting action Actions.
Notify: Transaction "訪問GitBucket首頁" started.
//首頁內容省略
....
Notify: Transaction "訪問GitBucket首頁" ended with "Pass" status (Duration: 4.9907).

8.遇到問題

(1)目前loadrunner11只支持32位的jdk,切記

(2)RuntimeSettings裏只是加載了基本jdk,若是須要加載其餘第三方的jar包請在JavaFunction中加載

(3)JavaVuser的執行效率取決於你的Java代碼,儘可能減小loadrunner對他的干預。

相關文章
相關標籤/搜索