loadrunner的測試腳本
A. loadrunner腳本編寫有哪些命令
VuGen腳本文件的開發過程
1。定義測試項目的目標,環境,腳本,測試數據,硬體等。腳本應該符合編碼規范或編碼習慣。
2。創建一個版本文件夾來保存被測應用程序相關的各種不同資源,例如截獲的.png/.gif圖形文件,錄制過程保存的html文件,錄制中的所有html源文件和VuGen的錄制日誌。
3。列出(在表裡)每一個手動操作業務過程需要的實際步驟
1)截取每一個屏幕圖像(screen image )。
2)為每一個屏幕(screen)分配一個唯一的事務名稱。
3)為處理的每一個步驟使用的技術組件(URL或者方法和函數)做注釋。
4。創建一個版本文件夾。
註:我不喜歡使用默認位置,我喜歡把所有腳本相關的文件放到一個相同的文件夾中。不幸的是,這意味著如果我在不同的測試間互相交換錄制,那我每次都得記住修改默認的設置。
註:當錄制一個新的腳本時,我喜歡選擇多協議而不是單個協議。。。
5。根據你的業務處理列表上指定的用戶使用步驟和screen的順序來使用VuGen錄製程序,產生一系列腳本代碼。在「開始錄制」對話框中
* 使用COM/DCOM 協議時,選擇「Win32應用程序「
* 使用Web(HTTP/HTML)時,選擇「Internet Application「
6。根據改進腳本方法和腳本語言規則來修改腳本。
改進腳本的方法:
1)為每一個GUI的screen添加事務語句來獲得事務時間。
2)添加顯示數據來幫助調試。
3)添加驗證點來驗證是否期望的文本或者圖片在每個腳本執行後顯示。
4)通過插入新參數和動態獲得整個文件的方式對硬編碼的URL,用戶id,用戶密碼和其他的變數數據進行參數化。這樣腳本中的參數就可以被動態的替換,以此來模擬運行時不同數據的使用。
5)添加重試邏輯(retry logic)來處理不可見的錯誤。
6)添加隨機函數發生器變化腳本來模擬真實的負載。
7)添加if/else邏輯來檢查結果,或者來進行合適的操作,或者來在合適的時候退出腳本。
8)在一個screen中添加語句來捕獲需要在其他命令中使用的數據。當使用Microsoft .NET的web form技術的時候,需要避免習慣性的「腳本超時「錯誤。
9)添加語句來調用外部庫函數,以便保存和檢索在內存Virtual Table Server中的數據。
10)處理XML.
11)添加語句來模仿客戶端的javascrīpt問題。
12)添加語句來管理超時。
13)從事務計時器中計算和減去無效的時間。
14)輸出日誌。
15)添加集合點。
16)添加時間(Timing)。
腳本語言規則:
把cookie代碼標注出來(因為腳本運行的時候他們被再次執行)。
7。通過在VuGen中運行來調試和調整腳本(單個用戶),同時運行時設置的日誌能夠顯示如下信息:
辨別和解決腳本編輯錯誤。
決定timing.
設置初始運行設置的場景。
8。在控制器中使用full test Runtime Settings來運行腳本。
腳本錄制和產生:
建立一個新腳本的第一步是選擇一個單協議或多協議。
* 一些協議可能在多協議模式下不能用。
* 只有在多協議的GUI下你才能重新排列action
在使用Java協議之前,確保你在環境變數的路徑下有JDK,否則你可能會遇到這個錯誤:
Error: Failed to find javac.exe Java
Compiler in Path and JDK installation folder in registry. [MsgId:
MERR-22981] 51Testing軟體測試網z*u?2Lge
Error: Failed to get JRE version. Check that your PATH environment variable contains \bin directory. [MsgId: MERR-22986]
當選擇Java協議的時候:
* 只有選擇了「RMI Java」才能錄制。
* 如果選擇「Java user」,「開始錄制」圖標或菜單是灰色的。
當你打開一個新的腳本時,默認的腳本名稱為「noname1」。下一個新的腳本名稱為「noname2」,以此類推。
註:有順序的錄制多個動作(而不是錄制一個動作,然後停止開始另一個動作)。這樣能使你識別出在你腳本中需要關聯的序列碼(在例如PeopleSoft的程序中)。
註:每次修改腳本後,腳本都需要重新編譯。
Java:略
腳本文件的調用:
VuGen是默認在你雙擊.usr後綴文件的時候被調用。
在這個文件里,Javascrīpt被指定為「Type=General-Js」。
B. 有沒有高手給我講下Loadrunner 如何手寫測試腳本,一般需要注意哪些(724588691)
lr的壓力是針對伺服器的,說白了也就是模擬一個客戶端發送數據到伺服器,在接受伺服器給你的數據。要手寫腳本需要清楚以下一些東西:
1、客戶端和伺服器數據交換流程
2、協議文檔(此協議文檔指伺服器和客戶端協定的數據格式和內容)
3、數據提交函數,最常用的函數:web_custom_request ,其次還有web_submit_data和web_submit_form
4、檢查點函數,最常用的函數:web_reg_find,還有web_find
5、動態關聯函數:web_reg_save_param
6、參數化
剛開始的時候可以先從錄制的腳本把相應的函數復制過來,自己更改數據和添加相應的函數功能,上手之後就可以完全自己去寫。
C. 如何用loadrunner做簡單網站的壓力測試
這個問題問的有點泛。LoadRunner做壓力測試也是有比較規范的流程。當然這個還是要看你做壓測的目標和場景。目標和場景要從壓測需求做起。例如:
需求調研和總結;
測試策略和場景制定;
測試環境部署;
測試用例編寫;
測試數據准備;
腳本錄制和調試;
場景運行設置
場景加壓測試
測試數據分析和調優
優化回歸測試
當然以上只是寫出測試主幹過程,其中細節和要掌握的知識也不是一點點東西能說的明白,希望這點點說明能解你疑惑。
D. 軟體測試LoadRunner的錄制腳本是用什麼語言編寫的
LR腳本支持的語言有:java、c、Visual Basic、vbscrīpt
默認的腳本生成語言為 C。
各種腳本語言的自動選擇:
1、對於 FTP、COM/DCOM 和郵件協議(IMAP、POP3 和 SMTP),VuGen 還可以使用 Visual Basic、VB scrīpt 和Javascrīpt 來生成腳本。
2、C 語言 - 用於那些使用復雜的 COM 構造和 C++ 對象的錄制應用程序,Web/http協議的腳本也默認使用C語言,並且不可更改。
3、Visual Basic - 用於基於 VB 的應用程序。
4、vb scrīpt - 用於基於 VBscrīpt 的應用程序,例如 ASP。
5、Java scrīpting - 用於基於 Javascrīpt 的應用程序,例如 js 文件和動態 HTML 應用程序。
更改腳本語言:
Tools---Recording Options 菜單選項,選擇General--scrīpt選項,就可以看見可選的語言
E. 大神能教我怎麼用loadrunner寫APP介面測試腳本嗎急求幫助。
手機App能用lr測試的話,只能用在測試後台伺服器性能方面,至於app前段性能那隻能用其他專門的工具。如果要用lr測試app後台伺服器性能,可以通過介面進行,選擇http協議即可。
因為apps跟後台的交互還是基於http協議的,所以首先你要確定介面都是那些,然後在lr中通過手動方式編寫腳本,無非就是模擬get、post方法,用到的函數基本就是web_url、web_submit_data()。
F. loadrunner測試腳本怎麼打開
腳本文件是 .usr 文件
啟動 loadrunner 打開該文件即可
G. loadrunner要怎麼用,怎麼寫測試腳本啊,還要用什麼插件嗎
先不用寫腳本,因為loadrunner一般是用來測試bs架構的,直接錄制腳本,然後優化腳本,再在腳本中清除cookis緩存的腳本內容,如果個人需要實現並發,那就要使用集合點,如果要想把你錄制腳本的過程分成多個事務,事務只是為了在跑腳本的時候方便統計吞吐量、點擊率、響應時間等方便,如果,有的被測系統不能用重復虛擬用戶,那麼就要在腳本中使用參數化多個用戶,至於插件,我還沒使用過什麼插件。。。希望對你有幫助
H. loadrunner如何使用
1、使用LoadRunner 完成測試一般分為四個步驟:
2、Vvitrual User Generator 創建腳本
創建腳本,選擇協議
錄制腳本
編輯腳本
檢查修改腳本是否有誤
3、中央控制器(Controller)來調度虛擬用戶
創建Scenario,選擇腳本
設置機器虛擬用戶數
設置Schele
如果模擬多機測試,設置Ip Spoofer
4、運行腳本
分析scenario
分析測試結果
5、安裝LoadRunner 中文版
LoadRunner 分為Windows 版本和Unix 版本。如果我們的所有測試環境基於Windows
平台, 那麼我們只要安裝Windows 版本即可。本章講解的安裝過程就是LoadRunner7.8中文的Windows 版本的安裝。
6、使用LoadRunner進行負載/壓力測試
7、錄制基本的用戶腳本
創建用戶腳本需要用到VuGen。提示: 運行VuGen 最好在1024*768 的解析度下, 否則有些工具欄會看不到。
啟動Visual User Generator 後, 通過菜單新建一個用戶腳本, 選擇系統通訊的協議。
這里我們需要測試的是Web 應用,同時考慮到後台SQL資料庫所以我們需要選擇Web(HTTP/HTML)協議+SQL SERVER協議,確定後, 進入主窗體。通過菜單來啟動錄制腳本的命令。
8、在URL 中添入要測試的Web 站點地址..。
●測試http://lms.ah.sp.com.cn/lms-lmm/loginForm.do選擇要把錄制的腳本放到哪一個部分, 默認情況下是「Action」。
這里簡單說明一下:VuGen 中的腳本分為三部分:vuser_init、vuser_end 和Action。其
中vuser_init 和vuser_end 都只能存在一個, 不能再分割, 而Action 還可以分成無數多個部分( 通過點擊New 按鈕, 新建ActionXXX)。在錄制需要登陸的系統時, 我們把登陸部分放到vuser_init 中, 把登陸後的操作部分放到Action 中, 把注銷關閉登陸部分放到vuser_end 中。( 如果需要在登陸操作設集合點, 那麼登陸操作也要放到Action 中, 因為vuser_init 中不能添加集合點) 在其他情況下, 我們只要把操作部分放到Action 中即可。注意: 在重復執行測試腳本時,vuser_init 和vuser_end 中的內容只會執行一次, 重復執行的只是Action 中的部分。
點「 選項 」按鈕, 進入錄制的設置窗體, 這里一般情況下不需要改動。
●然後點「OK」 後,VuGen 開始錄制腳本。在錄制過程中, 不要使用瀏覽器的「 後退」 功能,LoadRunner 支持不太好! 錄制過程中, 在屏幕上會有一個工具條出現。錄制的過程和WinRunner 有些類似, 不再多介紹。錄制完成後, 按下「 結束錄制」 按鈕,VuGen 自動生成用戶腳本, 退出錄制過程。
完善測試腳本
當錄制完一個基本的用戶腳本後, 在正式使用前我們還需要完善測試腳本, 增強腳本的
靈活性。一般情況下, 我們通過以下幾種方法來完善測試腳本。插入事務、插入結合點、插入註解、參數化輸入。這里只舉例介紹參數化如何設置,其它只作簡單介紹。
插入事務
事務(Transaction): 為了衡量伺服器的性能, 我們需要定義事務。比如: 我們在腳本
中有一個數據查詢操作, 為了衡量伺服器執行查詢操作的性能, 我們把這個操作定義為一個事務, 這樣在運行測試腳本時,LoadRunner 運行到該事務的開始點時,LoadRunner 就會開始計時, 直到運行到該事務的結束點, 計時結束。這個事務的運行時間在結果中會有反映。
插入事務操作可以在錄制過程中進行, 也可以在錄制結束後進行。LoadRunner 運行在
腳本中插入不限數量的事務。
具體的操作方法如下: 在需要定義事務的操作前面, 通過菜單或者工具欄插入。輸入該事務的名稱。注意: 事務的名稱最好要有意義, 能夠清楚的說明該事務完成的動作。插入事務的開始點後, 下面需要在需要定義事務的操作後面插入事務的「 結束點」。同樣可以通過菜單或者工具欄插入。默認情況下, 事務的名稱列出最近的一個事務名稱。一般情況下, 事務名稱不用修改。事務的狀態默認情況下是LR_AUTO。一般情況下, 我們也不需要修改, 除非在手工編寫代碼時, 有可能需要手動設置事務的狀態。
插入集合點
插入集合點是為了衡量在加重負載的情況下伺服器的性能情況。在測試計劃中, 可能會
要求系統能夠承受1000 人同時提交數據,在LoadRunner 中可以通過在提交數據操作前面加入集合點, 這樣當虛擬用戶運行到提交數據的集合點時,LoadRunner 就會檢查同時有多少用戶運行到集合點,如果不到1000 人,LoadRunner 就會命令已經到集合點的用戶在此等待, 當在集合點等待的用戶達到1000 人時,LoadRunner 命令1000 人同時去提交數據, 從而達到測試計劃中的需求。
注意: 集合點經常和事務結合起來使用。集合點只能插入到Action 部分,vuser_init 和vuser_end 中不能插入集合點。具體的操作方法如下: 在需要插入集合點的前面, 通過菜單或者工具欄操作輸入該集合點的名稱。注意: 集合點的名稱最好要有意義, 能夠清楚的說明該集合點完
成的動作。
插入注釋
注釋的作用就不多說了, 不過插入注釋最好是在錄制過程中。具體的操作方法如下: 在需要插入注釋的前面, 通過菜單或者工具欄操作
參數化輸入
如果用戶在錄制腳本過程中, 填寫提交了一些數據, 比如要增加資料庫記錄。這些操作
都被記錄到了腳本中。當多個虛擬用戶運行腳本時, 都會提交相同的記錄, 這樣不符合實際的運行情況, 而且有可能引起沖突。為了更加真實的模擬實際環境, 需要各種各樣的輸入。參數化輸入是一種不錯的方法。
用參數表示用戶的腳本有兩個優點:
① 可以使腳本的長度變短。
② 可以使用不同的數值來測試你的腳本。例如, 如果你企圖搜索不同名稱的圖書, 你
僅僅需要寫提交函數一次。在回放的過程中, 你可以使用不同的參數值, 而不只搜索一
個特定名稱的值。
參數化包含以下兩項任務:
① 在腳本中用參數取代常量值。
② 設置參數的屬性以及數據源。
參數化僅可以用於一個函數中的參量。你不能用參數表示非函數參數的字元串。
另外, 不是所有的函數都可以參數化的。
參數化輸入的講解, 我們採用一個例子的方式來進行。
在本例中我們參數化用戶的登陸名:
先看如下腳本,通過腳本錄制找到用戶登陸部分,如圖
參數名隨意取,建議取通俗易懂的名字,下面我們重點介紹一下參數的類型。
●DateTime: 很簡單, 在需要輸入日期/時間的地方, 可以用DateTime 類型來替代。
其屬性設置也很簡單, 選擇一種格式即可。當然也可以定製格式。
.●Group Name:暫時不知道何處能用到,但設置比較簡單。在實際運行中,LoadRunner
使用該虛擬用戶所在的Vuser Group 來代替。但是在VuGen 中運行時,Group Name
將會是None
.●Load Generator Name: 在實際運行中,LoadRunner 使用該虛擬用戶所在Load Generator 的機器名來代替。
.●Iteration Number: 在實際運行中,LoadRunner 使用該測試腳本當前循環的次數來
代替。
.●Random Number: 隨機數。很簡單。在屬性設置中可以設置產生隨機數的范圍
.●Unique Number:唯一的數。在屬性設置中可以設置第一個數以及遞增的數的大小。
注意: 使用該參數類型必須注意可以接受的最大數。例如: 某個文本框能接受的
最大數為99。當使用該參數類型時, 設置第一個數為1, 遞增的數為1, 但100 個
虛擬用戶同時運行時,第100 個虛擬用戶輸入的將是100,這樣腳本運行將會出錯。
注意: 這里說的遞增意思是各個用戶取第一個值的遞增數, 每個用戶相鄰的兩次循
環之間的差值為1。舉例說明: 假如起始數為1, 遞增為5, 那麼第一個用戶第一
次循環取值1, 第二次循環取值2; 第二個用戶第一次循環取值為6, 第二次為7;
依次類推。
●Vuser ID: 設置比較簡單。在實際運行中,LoadRunner 使用該虛擬用戶的ID 來代
替,該ID 是由Controller 來控制的。但是在VuGen 中運行時,Vuser ID 將會是–1。
File: 需要在屬性設置中編輯文件,添加內容,也可以從現成的資料庫中取數據( 下
面我們將會介紹)
●User Defined Function: 從用戶開發的dll 文件提取數據。就目前我認為, 這種方式
沒有必要。VuGen 支持C 語言的語法,在VuGen 中重新編寫類似的函數應該不難。
上面的例子中, 我們取隨機數即可。點「Properties… ..」 按鈕, 進行屬性設置窗口
添入隨機數的取值范圍為(1-50), 選擇一種數據格式。在「屬性」 中有以下幾
個選項:
◆Each Occurrence:在運行時, 每遇到一次該參數, 便會取一個新的值
◆Each iteration:運行時, 在每一次循環中都取相同的值
◆Once:運行時, 在每次循環中, 該參數只取一次值
這里我們用的是隨機數, 選擇Each Occurrence 非常合適。
下面我們再介紹用資料庫中的用戶名來參數化登陸用戶名。
框選住登陸名,點滑鼠右鍵,彈出對話框,選擇「替換為新參數」彈出對話框,此時參數名輸入:name,參數類型選擇File,如圖
注意: 參數的文件名不要使用con.dat、pm.dat 或者lpt*.dat 等系統裝置名下面我們將會連接資料庫, 從數據表中選擇用戶名。點「數據向導」 按鈕,顯示如圖
添入連接字元串, 點「創建」 按鈕,選擇事先配置好的ODBC連接。在SQL語句里輸入select查詢語句,出現如圖窗口
提醒: 在參數數據顯示區, 最多隻能看到100 行, 如果數據超過100 行, 只能點「編輯」 按鈕, 進入記事本看。
「選擇下一行 」 有以下幾種選擇:
●Sequential: 按照順序一行行的讀取。每一個虛擬用戶都會按照相同的順序讀取
●Random: 在每次循環里隨機的讀取一個, 但是在循環中一直保持不變
●Unique : 唯一的數。注意: 使用該類型必須注意數據表有足夠多的數。比如Controller 中設定20 個虛擬用戶進行5 次循環, 那麼編號為1 的虛擬用戶取前5 個數, 編號為2 的虛擬用戶取6-10 的數, 依次類推, 這樣數據表中至少要有100 個數據, 否則Controller 運行過程中會返回一個錯誤。
「按編號」指選擇列表中的那一列數據,從左到右分別是1、2、3依次
通常用在有關聯性的數據上面。我們這里取值Sequential 即可。完成設置關閉即可
4.3 單機運行測試腳本
經過以上的各個步驟後, 腳本就可以運行了。運行腳本可以通過菜單或者工具欄來操作。
執行「 運行」 命令後,VuGen 先編譯腳本, 檢查是否有語法等錯誤。如果有錯誤,VuGen
將會提示錯誤。雙擊錯誤提示,VuGen 能夠定位到出現錯誤的那一行。為了驗證腳本的正
確性, 我們還可以調試腳本, 比如在腳本中加斷點等, 操作和在VC 中完全一樣, 相信大家誰都不會感到陌生。如果編譯通過, 就會開始運行。然後會出現運行結果。
I. 如何調試LoadRunner腳本
VuGen 包含兩個選項來幫助調試 Vuser 腳本:「分步運行」命令和斷點。這些選項不適用於 VBscript 和 VB 應用程序類型的 Vuser。
要查看「調試」工具欄,請執行下列操作:
右鍵單擊工具欄區域,然後選擇「調試」。「調試」工具欄將顯示在工具欄區域
中。
「分步運行」命令
「分步運行」命令在運行腳本時一次運行一行。通過該命令,可以依次查看腳本
每一行的執行情況。
要分步運行腳本,請執行下列操作:
1 依次選擇「Vuser」 > 「分步運行」,或者單擊「調試」工具欄上的「步驟」按
鈕。VuGen 將執行腳本的第一行。
2 繼續單擊「步驟」按鈕來執行該腳本,直到腳本運行完成為止。
斷點
通過斷點可以使腳本在特定位置暫停執行。它可用於在執行期間的預定點處檢查
該腳本對應用程序的影響。要管理書簽,請參閱第 186 頁上的「斷點管理器」。
要設置斷點,請執行下列操作:
1 將游標置於腳本中要停止執行的行上。
2 依次選擇「插入」 > 「切換斷點」,或者單擊「調試」工具欄上的「斷點」按
鈕。也可以按鍵盤上的 F9 鍵。將在腳本的左邊距顯示「斷點」符號 ( )。
3 要禁用斷點,請將游標置於包含斷點符號的行上,然後單擊「調試」工具欄上的
「啟用 / 禁用斷點」按鈕。「斷點」符號中將會顯示一個白點 ( )。禁用一個斷點
後,執行將在下一個斷點處暫停。再次單擊該按鈕可以啟用斷點。
要刪除斷點,請將游標置於包含斷點符號的行上,然後單擊「斷點」按鈕或者按
F9 鍵。
要運行包含斷點的腳本,請執行下列操作:
1 照常運行腳本。
到達斷點時, VuGen 將暫停腳本的執行。可以檢查腳本運行到斷點時的效果,
並進行必要的更改,然後從斷點處重新啟動腳本。
2 要繼續執行,請依次選擇「Vuser」 > 「運行」。
重新啟動後,腳本將繼續執行,直到遇到下一個斷點或腳本完成。
斷點管理器
可以使用斷點管理器來查看和管理斷點。通過斷點管理器您可以操縱腳本中的所
有斷點。
要打開斷點管理器,請選擇「編輯」 > 「斷點」。
要跳至腳本中的斷點處,請執行下列操作:
1 從列表中選擇一個斷點。
2 單擊「在腳本中突出顯示」。則將在腳本中突出顯示該行。
注意,每次只能突出顯示一個斷點。
管理斷點
可以通過斷點管理器添加、刪除、禁用斷點或者為斷點設置條件
要添加斷點,請執行下列操作:
1 單擊「添加」。將打開「添加斷點」對話框。
2 選擇「操作」,並指定要添加斷點的行號。
3 單擊「確定」。該斷點將被添加到斷點列表中。
要刪除斷點,請執行下列操作:
1 要刪除單個斷點,請選擇該斷點並單擊「刪除」。
2 要立即刪除所有斷點,請單擊「全部刪除」。
要啟用 / 禁用斷點,請執行下列操作:
1 要啟用斷點,請在「操作」列內選中操作的復選框。
2 要禁用斷點,請在「操作」列內清除操作的復選框。
通過斷點管理器您可以將斷點設置為在某些條件下暫停執行。