SilkPerformer使用點滴[1] 軟件測試
一、錄制時腳本為空的解決辦法
使用SilkPerformer最常見的問題是在用錄制時,錄制不上內容,Functions數始終為0,腳本為空。
1.檢查注冊表中的Key:HKEY_LOCAL_MACHINE | SOFTWARE | Microsoft | Windows NT | CurrentVersion | Windows | AppInit_DLLs,其值應為:qaphooks.dll。如果在qaphooks.dll后面有逗號或者空格,必須刪除逗號或空格。
2.檢查注冊表中的Key:HKEY_CURRENT_USER | SOFTWARE | Microsoft | Windows | CurrentVersion | Explorer | BrowseNewProcess,其值應為:yes。
3.檢查注冊表中的Key:HKEY_LOCAL_MACHINE | SOFTWARE | Microsoft | Windows | CurrentVersion | Explorer | BrowseNewProcess,其值應為:yes。
4.如果修改注冊表的上述項后,function還一直為0,再檢查SilkPerformer的profile或proxy設置:
1)打開SilkPerformer,選擇Settings | System | Recorder | Application Profiles;
2)編輯您所使用的瀏覽器設置;
3)在protocol selection區內,確保Web的checkbox是選中的,然后選擇“Web Settings”按鈕;
4)確保Winsock的選項是W2_32.dll。
二、與Oracle、LoadRunner端口沖突的解決辦法
在裝了Oracle或LoadRunner的機器上安裝SilkPerformer,會造成SilkPerformer與Oracle、LoadRunner通信端口沖突,如下圖所示:
Oracle XDB(XML數據庫)Http服務的默認端口是8080,而SilkPerformer腳本記錄器的http協議監聽端口也默認的是8080。
解決此端口沖突的方法有兩種,一是更改Oracle XDB Http服務的端口;另一種方法就是更改SilkPerformer腳本記錄器的Http協議監聽端口。下面就簡要介紹如何更改SilkPerformer腳本記錄器的http協議監聽端口。
1)打開SilkPerformer,選擇Settings | System | Recorder | Proxies;
2)選擇HTTP協議,點“Edit”按鈕編輯其設置;
3)把“listen port”編輯框中默認的8080,改為其它端口值就可以了,如18080。
安裝了LoadRunner的機器會占用端口1080,而SilkPerformer腳本記錄器的Socks協議監聽端口也默認的是1080。解決此端口沖突的方法與上面相同。
三、應用登錄問題
在很多客戶的應用中不允許同一個用戶登錄多次,那么如果需要在登錄這個業務點上加壓的話,就必需對登錄的用戶名和密碼進行參數化。但是僅僅做了參數化還是不夠的,因為如果讓SilkPerformer的腳本在執行過程中自己去隨機的取用戶名和密碼時,還是有可能會取到同一個用戶名和密碼,這樣就沖突了,所以還必需要添加一些限制。
FileCSVLoadGlobal(hfile,csvFile,",");//導入參數化文件
FileGetRow(hfile,GetUserId()); //根據虛擬用戶的ID來取參數化的數據
sAclearcase/" target="_blank" >ccountName:=FileGetCol (hfile,1,10);//取數據的第一列
sPassword:=FileGetCol (hfile,2,10); //取數據的第二列