軟件測試中的LoadRunner腳本實例
這是我做了很長時間的一個php?name=%BD%C5%B1%BE">腳本,我覺得這個腳本在學習,關聯、參數化、自定義函數調用都有很好的幫助,希望能給大家帶來學習的價值,如果有不明白的地方請提問;我們共同研究;
實踐出真知”,最快的學習方法是邊學邊做實驗,在實踐中掌握各種知識,呵呵,下面就把LoadRunner中參數化取值的知識點,做個小例子吧:
問題提出: 主要想試驗下,在Controller中,多個用戶,多次迭代中參數的取值.
方法:
腳本: 我把取到的參數值和對應的VuserID記錄下來保存到一個文件中,下面是例子的腳本
long fileopen;
char *filename = "C:\\temp\\params.log";
vuser_init()
{
if ((fileopen = fopen(filename,"a+")) == NULL) {
lr_error_message ("file isn't open,path=%s",filename);
return 0;
}
return 0;
}
Action()
{
int id,scid;
char *vuser_group;
//typedef long time_t;
//time_t t;
long t;
char *a = "{aaa}";
char *b = "{bbb}";
lr_whoami(&id, &vuser_group, &scid);
fprintf(fileopen,"%d,%s,%s,%s",id,lr_eval_string (a),lr_eval_string (b),ctime(&t));
return 0;
}
vuser_end()
{
fclose(fileopen);
return 0;
}
參數設置為:
取唯一值,每次迭代更新。
運行時設置的迭代次數為2。
場景的設置:
虛擬用戶數:5個
運行模式:沒有設置duration,選擇的“Run until complete”
完成后的日志文件params.log的內容如下:
1,a1,b1,Thu Jan 01 08:00:05 1970
1,a2,b2,Thu Jan 01 08:00:05 1970
10,a5,b5,Thu Jan 01 08:00:05 1970
10,a6,b6,Thu Jan 01 08:00:05 1970
2,a3,b3,Thu Jan 01 08:00:05 1970
2,a4,b4,Thu Jan 01 08:00:05 1970
30,a9,b9,Thu Jan 01 08:00:05 1970
30,a10,b10,Thu Jan 01 08:00:05 1970
21,a7,b7,Thu Jan 01 08:00:05 1970
21,a8,b8,Thu Jan 01 08:00:05 1970
從生成的日志文件中可以看到VuserID分別為1,2,10,21,30
第一次迭代取參數分別為1,3,5,7,9
第二次迭代取參數分別為2,4,6,8,10
那試驗的結果就是每個Vuser取參數的時候相同的Vuser在多個迭代中取的是連續的。不同的Vuser第一個的取值是計算了迭代次數后的那個順序上的值。
文章來源于領測軟件測試網 http://www.kjueaiud.com/