LR在錄製一個網站註冊業務的腳本時,突然間遇到一個問題:註冊時,由於註冊用戶需要驗證唯一性,所以在LR回放腳本時,用Run-time Viewer工具回放可以發現(先在腳本中設置幾個斷點),真實運行的註冊腳本用戶並沒有註冊成功,如圖:
出現這樣的問題,如何解決呢?
當然,首先就想到了腳本參數化設置,於是我動手寫了一段代碼,運行腳本讓它隨機生成用戶名(用戶名指定格式),然後寫入一個dat文件,在參數設置中導入dat文件,這樣就非常方便地進行參數化,代碼如下:
/*author:luihengk*/ int i,j,k; char c[250] ; char *filename = "C:\\scripts\\test.dat"; long file; if((file=fopen(filename,"a+"))==NULL){ lr_output_message("uncreate a file%s",filename); return -1; } web_set_max_html_param_len("1024000"); for(i=0;i<=10;i++){ k = rand()*10; sprintf(c,"%d",k);//int 轉換爲 char strcat(c,"[email protected]");//將[email protected]爲後綴追加給c fprintf(file,"%s\n",c); } fclose(file);
導入Parameter List:
注意:Select next row 設置爲Unique,Update value on設置爲 Each iteration,這裏必須保持參數化列表有一定的數據,我這裏設置了100條記錄
腳本中設置參數化:
以上設置完成後,再次回放腳本,就不會出現註冊失敗,儘管在Replay Log 中沒有出現報錯,用Run-time Viewer進行確認。