簡體   English   中英

如何使用vb腳本自動將對象添加到對象存儲庫?

[英]How to add objects to object repository automatically using vb scripts?

是否可以使用VBScript自動將對象添加到對象存儲庫?

假設我的網頁/應用程序中包含鏈接列表。 這會耗費時間,當我手動添加對象時,我試圖自動將對象添加到存儲庫。 但由於我不知道如何在QTP中激活對象存儲庫(在運行時),因此無法繼續。

以下是我嘗試過的代碼:

Function Objects_Count(myObject)
  Dim Objects
  Set Objects=Description.Create
  Objects("micclass").value=myObject
  set obj=Browser("title:=.*").Page("title:=.*").ChildObjects(Objects)
  For i=0 to obj.count-1
    'msgbox i
    c=obj(i).getroproperty("name")
    If obj(i).Exist(1) Then
      obj(i).highlight
    End If
    Print c
  Next
End Function
Call Objects_Count("link")

上面的代碼將獲取日志文件中顯示的鏈接名稱,並在應用程序/網頁中突出顯示。 請指導我如何將該鏈接(對象)的屬性添加到對象存儲庫。

謝謝!

為了操作對象存儲庫,您需要Mercury.ObjectRepositoryUtil對象, load現有的對象存儲庫並使用AddObject向其添加對象。

Set myRepository = CreateObject("Mercury.ObjectRepositoryUtil")
myRepository.Load "C:\QuickTest\Tests\Flights.tsr"
myRepository.AddObject myLink, Browser("B").Page("P"), "myLinkName"

你必須稍微玩一下才能讓它適應你的情況。 使用QTP幫助找出ObjectRepositoryUtil的所有可訪問方法/屬性,只需在Index選項卡下的搜索框中輸入“ObjectRepositoryUtil”即可。

編輯:您需要通過其ProgId而不是通過其micclass創建測試對象。

然后使用SetTOPropertyChildObjects返回的值創建相關描述。

有關詳細信息,請參閱此問題


我不相信有一種方法可以動態添加測試對象。 ObjectRepositoryUtil.AddObject在其文檔中有這個:

您可以使用此方法添加從其他對象存儲庫檢索的對象的副本。

您可以通過XML動態創建存儲庫,並在測試中獲取屬性,但我認為這比它的價值更令人煩惱。

在這種情況下,可能最好使用描述性編程。

有關詳細信息,請參閱此LinkedIn主題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM