LoadRunner Windows Sockets 牛刀小試

發表于:2013-01-06來源:碼農博客作者:backtracker點擊數: 標簽:loadrunner
使用tcpcopy對采集項目進行負載測試已經接近尾聲了,由于下一個項目的采集程序只能在windows下運行,所以不得不尋找其他的測試工具。

  使用tcpcopy對采集項目進行負載測試已經接近尾聲了,由于下一個項目的采集程序只能在windows下運行,所以不得不尋找其他的測試工具。首先看了一下Jmeter,發現它好像沒有模擬TCP協議的功能,然后我就想到了LoadRunner的winSocket。折騰了一下,實驗成功?,F在把實驗的過程分享給大家。

  一、實驗目標

  用LoadRunner Windows Sockets發送數據給TCP服務,查看數據是否發送成功。

  二、實驗工具和實驗方法

  1.實驗工具及下載

  LoadRunner 11 下載地址 傳送門

  SocketsEcho.java(由博主simon友情提供) 下載地址 傳送門

  wireshark 下載地址 傳送門

  2.實驗方法

  啟動SocketsEcho這個java程序,對TCP某一個端口進行監聽,然后使用LoadRunner Windows Sockets編寫腳本向TCP服務發送數據,期間使用wireshark對數據包進行抓包分析。

  本次實驗需要兩臺機器,因為如果TCP服務跟LoadRunner在一臺機器上的話,發送的TCP數據包會直接走協議棧,不走網卡,這樣就會導致wireshark就抓不到數據 (by GodLaughing)

  三、實驗步驟

  1.編譯并運行SocketsEcho

1
2
3
javac SocketsEcho.java #編譯
java SocketsEcho #運行

  該程序默認監聽6000端口,如果需要修改請修改類的PORT屬性。接收到TCP數據包會將內容打印出來,但不要輸入中文,打印會亂碼。

  2.編寫VuGen測試腳本

  1) 初始化用戶:創建WinSocket,連接TCP服務器

1
2
3
4
5
6
7
8
    vuser_init()
    {
            lrs_create_socket("socket0", "TCP", "LocalHost=192.168.10.208:4001",
"RemoteHost=192.168.10.165:6000",LrsLastArg);
 
            return 0;
    }
   

  LocalHost中輸入LoadRunner所在機器IP和端口,RemoteHost中輸入SocketsEcho所在IP和端口。

  2)發送數據buf1,插入事物可對其進行監控

1
2
3
4
5
6
7
8
9
Action()
{
 
    lr_start_transaction("Socket_Send");       
        lrs_send("socket0", "buf1", LrsLastArg); 
    lr_end_transaction("Socket_Send", LR_AUTO);
    return 0;
}

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97