【軟體測試自動化-QTP NOTE 1】 ==物件程式庫-Object Repository==

來源:互聯網
上載者:User

 

寫這個部落格是想把自己過去學習的一些QTP知識整理下沉澱下,以筆記的形式發表在blog中,算是溫故而知新吧~

希望看過的可以提些意見 互相勉勵 互相學習。

-------------------------------------------------------------------------------------------------------------------------------------------------

Note1:物件程式庫-Object Repository

所謂物件程式庫 就是QTP存放對象的地方

QTP在物件程式庫中為每一個擷取的對象儲存一個定義。這些定義包含了各種被用來確認唯一對象參數的值

比如innertext,html tag等,這些web對象參數都是可以通過IE Developer Toolbar擷取的

PS:IEDT這個外掛程式對於使用QTP的人來說非常實用,當然在IE8.0中已經被整合進去

對象添加至物件程式庫

1.基本的錄製過程中,QTP會自動把對象添加至OR

2.手動添加對象至物件程式庫

手動添加對象至物件程式庫時,這裡QTP會啟始物件選擇模式(Object Selection Mode),從而對你選擇的對象進行添加

 

這裡有兩種情境:

1.半操作環境:

臨時無效化對象選擇模式

長按CTRL,滑鼠變成常規狀態,可以進行滑鼠的操作點擊,完成後,釋放CTRL,重新迴歸至對象選擇模式

2.全操作環境:

如果在添加對象過程中,我們需要在不同程式直接切換,那樣我們可以

按CTRL+ALT 從而使對象選擇模式無效。那樣我們就可以正常的操作其他任何程式

一旦完成後,按CTRL即可恢複到有效模式,從而開始添加對象

PS:這裡區分模式的有效主要看滑鼠的狀態

--------------------------------------------------------------------------------------------------------------------

接下來是QTP物件程式庫的基本操作方法

大致可以分為,SetTOProperty,GetROProperty,GetTOProperty

 

TO:Test Objects 測試庫中的對象

 

RO:Run-time Objects 運行中的對象

 

SetTOProperty:修改物件程式庫中對象的屬性值

GetTOProperty:擷取物件程式庫中對象的屬性值

GetROProperty:擷取運行對象的屬性值

Example1:改變測試對象的屬性

view plaincopy to clipboardprint?
'建立一個WebEdit對象  
Set oWebEdit= Browser("Browser").Page("Page").WebEdit("txtName")  
'擷取對象name  
oldName=oWebEdit.GetToProperty("name")  
'修改對象為 "new value"  
oWebEdit.SetToProperty "name","new value" 
'擷取對象新name  
newName=oWebEdit.GetTOProperty("name")  
Msgbox newName 
'建立一個WebEdit對象
Set oWebEdit= Browser("Browser").Page("Page").WebEdit("txtName")
'擷取對象name
oldName=oWebEdit.GetToProperty("name")
'修改對象為 "new value"
oWebEdit.SetToProperty "name","new value"
'擷取對象新name
newName=oWebEdit.GetTOProperty("name")
Msgbox newName

 

Example2:在測試執行過程中擷取run-time對象屬性

view plaincopy to clipboardprint?
xxx=Browser("").Page("").WebEdit("").GetROProperty("value")  
Msgbox xxx 
xxx=Browser("").Page("").WebEdit("").GetROProperty("value")
Msgbox xxx

PS:QTP不提供Run-time對象屬相的修改方法,因為其對象可以直接進行object.value的修改,所以大家可能沒有看到SetROProperty。

------------------------------------------------------------------------------------------------------------------

最後是一些對於物件程式庫的整體維護方法

1.物件程式庫的儲存

在物件程式庫視窗,選擇[Export Local Objects]命令,便可以把物件程式庫以tsr格式的檔案匯出到本地

 

2.物件程式庫的合并

在項目過程中,如果物件程式庫是分裂狀態的,最好是將其產生統一的物件程式庫,其目的是為了讓測試團隊更好的維護和調用物件程式庫

[Resources]->[Object Repository Manager]->[Tool]->[OR Merge Tool]

[Primary file]與[Secondary file]中匯入單個物件程式庫,最後QTP會自動合并成一個新的物件程式庫。

:

 

3.物件程式庫共用引用

將物件程式庫合并為一個公用物件程式庫,這是一個非常好的調用維護的方法

結合這一方法,可以繼續將用例指令碼一一對應到這個公用物件程式庫中

[Resources]->[Associate Repositories]->關聯到需要的用例Action

 

 

本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/Tachibana814/archive/2010/02/28/5334305.aspx

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.