QTP的物件識別技術

2021-09-30 23:49:23 字數 1068 閱讀 6422

在我們在做自動化的時候,經常會遇到的一種情況就是,在同乙個頁面裡, 出現相同型別和名稱的物件時,一般需要依賴額外的屬性來區分這些相同的物件。 在

qtp裡共有3類這樣的順序標識。

1. 順序標識(ordinal indentifiers):[location \ index \ creationtime]   其中creationtime 僅適用於browser物件

這些順序標識一般用在描述性程式設計裡面 例如:

'採用location 是 按物件位置的從上到下的

browser("").page("").webedit("name:=qtp","location:=2").set "eric_1991"

'採用index 是按物件的位置從左到右的

browser("").page("").webedit("name:=qtp","index:=3").set "eric_1991"

'creationtime 順序標識僅能用在browse物件, 按瀏覽器的程序產生的時間先後順序排列

systemutil.run "iexplore.exe", "" '這個時候creationtime 的值是0

systemutil.run "iexplore.exe", ""  '這個時候creationtiem的值是1

browser("creationtime:=").highlight '高亮顯示的是hp.com的瀏覽器

browser("creationtime:=").highlight '高亮顯示的是baidu.com的瀏覽器'

qtp 在碰到物件識別問題的時候,會嘗試應用智慧型識別(smart identification)。 如果智慧型識別能定位到物件,那麼指令碼就繼續執行,否則就會提示錯誤

在 物件的智慧型識別設定  base filter properties  裡會進行第一亂的 物件屬性的匹配,如果base filter properties 裡面的屬性不能夠定位到該物件,那麼qtp就會到該物件的optional filter properties 裡面的屬性進行逐個去匹配 ,直到能定位到該物件位置, 否則就會發生物件找不到的錯誤

QTP無法識別物件的解決辦法

對qtp無法識別物件的解決辦法很多,現使用到的有以下五種 1.低階錄製 不建議使用 2.虛擬錄製 慎重使用 3.描述程式設計 4.物件對映 5.objectidentification 詳解1 低階錄製 automation lowlevelrecording anlogrecording,記錄螢幕...

QTP內部物件

物件一覽,詳細參考qtp的幫助文件。crypt object datatable object description object dotnetfactory object dtparameter object dtsheet object environment object extern ob...

QTP虛擬物件

最近在跑qtp,各種頭疼,遇到好多問題,解決了不少,還有一些等待著解決,先來說一下已經解決的吧。在錄製qtp時,有些控制項可能不被qtp支援,則可以考慮使用虛擬物件來解決問題,當然還有其他的方法,但我目前還是個菜鳥,以後發現了再繼續補充。下面來說一下使用虛擬物件做qtp測試需要注意些什麼 1,使用虛...