軟件測試工具LoadRunner中運行QTP腳本

發表于:2010-03-30來源:作者:點擊數: 標簽:軟件測試loadrunnerLoadRunnerLoadrunnerloadRunner
軟件測試工具 LoadRunner 中運行 QTP 腳本 第一:為什么用LoadRunner做 功能測試 自動化? 1、 lr 是模擬瀏覽器給 服務器 直接發送請求,而QTP是模擬鼠標鍵盤的操作。 故: LR 腳本可以做驗證流程的功能自動化,但是驗證的大多是后臺數據處理流程的正確性,Q

軟件測試工具LoadRunner中運行QTP腳本

第一:為什么用LoadRunner做功能測試自動化?

  1、lr是模擬瀏覽器給服務器直接發送請求,而QTP是模擬鼠標鍵盤的操作。

  故:LR腳本可以做驗證流程的功能自動化,但是驗證的大多是后臺數據處理流程的正確性,QTP可以驗證流程也可以驗證UI。

  2、LR錄制腳本是類C語言,QTP是vbscript。

  故:你若對c了如指掌自然也可用lr加入復雜的檢查點完成功能自動化,QTP由于使用vbscript是windows嫡系子孫,調用一些wshell dom等可以很好的操作UI。

  3、最后一條:LR腳本比QTP腳本容易維護。

  4、qtp是基于對象庫的,而LR是基于協議的,前者是屬于黑盒測試范疇,前臺進行處理,而后者是基于協議,是后臺進行處理的。如果非得用LR也未嘗不可,只是舍近求遠,畢竟QTP是專業的自動化工具。另外做功能測試不可能不關注UI界面。

  5、QTP的檢查點類型比較多,如下:

QuickTest Professional提供了下列類型的檢查點:

檢查點類型

描述

用法示例

標準檢查點 檢查對象的屬性值 檢查是否選中某單選按鈕
圖像檢查點 檢查圖像的屬性值 檢查圖像源文件是否正確
表檢查點 檢查表中的信息 檢查表單元格中的值是否正確
頁面檢查點 檢查網頁的特性 檢查加載網頁所需的時間,或者檢查網頁是否包含中斷鏈接
文本/ 文本區域檢查點 檢查文本字符串是否顯示在網頁或應用程序窗口中的適當位置 檢查預期的文本字符串是否顯示在網頁或對話框上的預期位置
位圖檢查點 將網頁或應用程序的某個區域捕獲為位圖后對其進行檢查 檢查網頁或網頁的任何部分是否能按預期顯示
數據庫檢查點 檢查應用程序或網站所訪問的數據庫內容 檢查數據庫查詢中的值是否正確
可訪問性檢查點 對網站區域進行識別,以檢查是否符合508部分 檢查網頁上的圖像是否包含ALT屬性(該屬性是W3C Web內容可訪問性規則所要求的)
XML檢查點 檢查XML文檔的數據內容 注意:XML文件檢查點用于檢查特定的XML文件;XML應用程序檢查點用于檢查網頁中的XML文檔

  第二:LR中運行QTP腳本

  1、運行準備:

  1)勾選QTP的Tools--Options--Run的"Alow other Mercury products to run tests and components"

  2)錄制需要在lr中運行的QTP腳本,并且在QTP腳本中設置事務,Services.StartTransaction "start"與Services.EndTransaction "start"

  2、運行QTP腳本

  在LR中運行時選擇QTP腳本,為QTP腳本存放目錄下文件擴展名為.usr的文件。

  注:LR中運行QTP腳本時,只能有一個Vuser,否則將報錯:

  The load generator is currently running the maximum number of Vusers of this type

  3、可能報錯:

  1)如果LR運行時報"LR沒有相關的license"錯,可以在LR里增加一個1000個的global license,注冊號碼為:AEACFSJI-YASEKJJKEAHJD-BCLBR

  2)運行測試時,需要先將QTP關閉;

  3)LR執行大于1個以上的虛擬用戶時會提示:The load generator is currently running the maximum number of Vusers of this type,

  所以,QTP腳本在LR中運行一臺計算機只能運行一個GUI Vuser,如果要同時運行多個用戶,可以QTP腳本里設置循環,循環可通過QTP的datatable設置需要運行的用戶,或是在QTP里通過FOR,NEXT語句來設置次數?;蚴窃赾ontroller里同時開啟多個相同的腳本,然后分散在不同的電腦上運行,注意:各終端一定要開啟LR的LR Agent Process及QTP的TOOS-Remote Agent代理服務。

  注1:設計供LR運行的測試用例應遵守以下規則:

  LR不能運行嵌套操循環;

  請勿包括對外部操作或其他外部資源(如外部數據表文件,環境變量文件,共享對象庫等)的引用。

  注2:設計供業務流程監視器使用的測試時,應遵守以下規則:

  對應的StartTransaction和EndTransaction語句必然包含在同一個操作內。

  業務流程監視器不使用QTP的setting-run中的循環設置,而是使用數據表中文件中的行數。

  注3:在LR的controll中,Run-time Settings中只有常規類別與子類別有效,回放選項不起任何作用。

  如以下腳本:

  Services.StartTransaction "start"

  For i=1 To DataTable.GetSheet(dtLocalSheet).GetRowCount

  Window("Tencent Traveler").WinEdit("Edit").SetSelection 0,19

  Window("Tencent Traveler").WinEdit("Edit").Set "www.diy.com"

  Window("Tencent Traveler").WinEdit("Edit").Type micReturn

  Window("Window").Page("產品介紹-建站易").Link("模板倉庫").Click

  Window("Window").Page("模板倉庫-建站易").Link("在線幫助").Click

  Window("Window").Page("在線幫助-建站易").Link("關于我們").Click

  datatable.GetSheet("Action1").setnextrow

  Next

  Services.EndTransaction "start"

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97