目標:用50個並發用戶創建3000個賬號到HP Web Server
分析:
1. Vugen錄制腳本時,打開首頁http://127.0.0.1:1080/WebTours/,進入注冊賬號界面不用重復打開,放入vsuer_init.
2. 創建賬號頁面需要重復操作,放入Action.
3. 登出賬號放入vuser_end.
4. 50個並發用戶我們需要在Controller里邊設置Vuser為50,總共創建3000個賬號那每個Vuser用戶數據分配60個。
每個Vuser迭代次數為60.
接下來實際操作步驟:
1. 創建一個Web(HTTP/HTML)腳本.
2. 腳本代碼如下:
vuser_init() { web_url("WebTours", "URL=http://127.0.0.1:1080/WebTours/", "Resource=0", "RecContentType=text/html", "Referer=", "Snapshot=t3.inf", "Mode=HTML", LAST); web_link("sign up now", "Text=sign up now", "Snapshot=t4.inf", LAST); return 0; }
Action() { lr_think_time(14); web_submit_data("login.pl", "Action=http://127.0.0.1:1080/WebTours/login.pl", "Method=POST", "RecContentType=text/html", "Referer=http://127.0.0.1:1080/WebTours/login.pl?username=&password=&getInfo=true", "Snapshot=t5.inf", "Mode=HTML", ITEMDATA, "Name=username", "Value=lll{username}", ENDITEM, "Name=password", "Value=1234", ENDITEM, "Name=passwordConfirm", "Value=1234", ENDITEM, "Name=firstName", "Value=", ENDITEM, "Name=lastName", "Value=", ENDITEM, "Name=address1", "Value=", ENDITEM, "Name=address2", "Value=", ENDITEM, "Name=register.x", "Value=73", ENDITEM, "Name=register.y", "Value=10", ENDITEM, LAST); web_image("button_next.gif", "Src=/WebTours/images/button_next.gif", "Snapshot=t6.inf", LAST); return 0; }
vuser_end() { lr_think_time(7); web_url("welcome.pl", "URL=http://127.0.0.1:1080/WebTours/welcome.pl?signOff=1", "Resource=0", "RecContentType=text/html", "Referer=http://127.0.0.1:1080/WebTours/nav.pl?page=menu&in=home", "Snapshot=t7.inf", "Mode=HTML", LAST); return 0; }
3. 參數username設置成unique number類型,每個Vuser分配60個,編號格式為%04d,
創建賬號名稱為lll0001~lll3000,如下圖:
4. Run-time setting中,Iteration Count設置成60,50個Vuser,每個Vuser迭代60次,總共創建3000個賬號。
think time設置為限制在5s:
在Miscellaneous中把Define each action as a transaction勾選上
5. 打開Controller,把剛才創建的腳本加入到場景中。
6. 場景計划設置如下圖,50個Vuser同時初始化同時啟動,迭代次數跑完前一直運行。
7. 運行場景,在Scenaario Status里邊查看事務運行狀態。
打開Web Server創建賬號目錄底下查看賬號是否創建成功。
C:\Program Files (x86)\HP\LoadRunner\WebTours\MercuryWebTours\users