您好,登錄后才能下訂單哦!
剛剛接觸QTP的同學,對QTP如何工作,往往不甚了解,而在工作學習中只有真正里了解了QTP的工作原理方可進一步的學習QTP與使用QTP。本講通過舉例來揭示QTP的工作原理,希望能幫助讀者進一步了解QTP
1.1 QuickTest如何學習對象與識別對象
QTP10.0如何學習對象呢?通過一個例子來說明。
例如,Orlando需要Lee幫其到車站接兩個孩子, Lee手中有一張兩個孩子最近新拍的照片,他們各有特征。其中一個是8歲的小孩,卷發、藍色眼睛;一個是女孩,扎著馬尾辮并帶黑色框眼鏡,年齡大概14歲左右。Lee通過照片中的特征完全可以區分并識別兩個孩子。Lee在車站看到類似的孩子,然后再根據自己所記的特征,很快就能確定是否是Orlando讓其接的兩個小孩。
QuickTest 采用了極為類似的方法,以便在錄制過程中記住對象。
首先,其將“觀察”要錄制的對象,然后將其作為測試對象進行存儲,確定該對象符合的測試對象類。檢查項目是那一類,QuickTest 也會對測試對象進行分類,例如,標準 Windows 對話框 (Dialog)、Web 按鈕 (WebButton) 或 Visual Basic 滾動條對象 (VbScrollBar)等。
對于每個測試對象類,QuickTest 都有一個始終要記住的強制屬性列表,類似于 Lee在看到照片之后要記住每個孩子特征一樣。當錄制對象時,QuickTest 始終記住這些默認的屬性值,然后對其余的同類對象進行核查,以檢查該描述是否足以唯一標識該對象。如果不足以進行唯一標識該對象,QuickTest將對該對象逐項添加輔助屬性,直到屬性列表能夠標示一對象為止。就像 Lee通過頭發顏色和身高等特征組合來識別兩個孩子一樣。如果沒有可用的輔助屬性,或者那些可用的輔助屬性仍不足夠標示對象的唯一性,QuickTest 將添加一個特殊的順序標識符(例如頁面上或源代碼中對象的位置),用來標示對象的唯一性。
QuickTest回放腳本過程中,如何識別對象呢?
QuickTest回放腳本過程中,與Lee識別兩個孩子一樣,根據Lee腦海中記錄的每個孩子獨有的特征組合迅速確定目標。QuickTest通過錄制過程中記錄下來的對象屬性列表,查找相應的對象屬性,根據屬性(或多個屬性組合)確定對象的唯一性,然后再對該對象進行相關操作。
1.2 測試對象的描述
對于每個對象類,QuickTest在錄制時記住對象的一組屬性,然后在運行測試時使用該描述屬性來標識該對象并識別該對象。
以錄制登錄飛機訂票系統的腳本為例,點擊QTP10.0窗口中的“Keyword View”,右擊“userName”,右擊菜單中選擇“Object Properties”如圖2.30所示。
如果圖屬性列表中的三個屬性不足以對該對象進行唯一標識,QuickTest將通過添加一些輔助屬性來標示其唯一性。運行測試時,QuickTest將搜索與它記住的屬性描述相匹配的對象。如找到相匹配的對象,則對該對象執行一些操作。
QuickTest Professional將對象及其記錄的屬性列表存放在什么位置呢?
如圖所示,在QTP對象庫中可看到QuickTest Professional錄制的對象及屬性列,點擊QuickTest Professional菜單欄上的【Resources】—【Object Repository】進入對象庫。
對象庫
如圖所示,正是對象庫中記錄了錄制過程中所操作的對象,QuickTest回放時才能識別該對象,并對該對象賦予相關的操作。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。