物件庫程式設計(orp)是乙個非常強大的功能,如果物件名字改變了,只需要進入物件庫修改物件,指令碼即可批量更新。
描述性程式設計(dp)不需要維護龐大的物件庫,而需要維護龐大的**,但是在某些情況下(比如物件不能新增到物件庫)它很有用。
下面通過乙個例子來學習如何進行描述性程式設計:
browser("這時候開啟物件庫如下圖:").page("
").webedit("
wd").set "
abcde
"browser(
"").page("
").webbutton("
").click
某些情況下會出現無法新增物件到物件庫的情況,這時候就需要用到描述性程式設計了。所以我們在這裡先把物件庫里的4個物件都刪除。好了,現在已經沒有物件供我們使用了。開始進行描述性程式設計了。它有2種方式:
一.使用 物件名(「屬性名1:=屬性值1」,「屬性名2:=屬性值2」)注意:這裡的的括號,逗號,冒號都必須是英文狀態下的。
上面的**轉換如下:
browser("注意:如果父物件描述了,子物件一定要描述,不然qtp會報錯。但是子物件如果描述了,父物件若被新增到物件庫中,可以不描述。").page("
").webedit("
name:=wd
","html tag:=input
","html id:=kw1
").set "ad"
browser(
"").page("
").webbutton("
","html id:=su1
").click
二.使用description物件
使用description物件可以返回包含一組property物件的properties集合物件。property物件由屬性名和值組成。然後,可以在語句中指定用返回的properties集合代替物件名(每個property物件都包含乙個屬性名和值)。
建立properties物件的語法如下:
set objdescription = description.create()建立完畢後,就可以在執行會話期間在properties物件中新增,編輯,刪除或檢索屬性和屬性值了。
最開頭的**轉換如下:
set objbrowser =description.create()注意:1.這裡描述物件的括號內不需要加引號; 2.最後要釋放物件,可以從最裡面一層開始釋放到最外面一層。objbrowser(
"name
").value = "
"set objpage =description.create()
objpage(
"title
").value = "
"set objwebedit =description.create()
objwebedit(
"name
").value = "wd"
objwebedit(
"html tag
").value = "
input
"objwebedit(
"html id
").value = "
kw1"
browser(objbrowser).page(objpage).webedit(objwebedit).set
"abcde
"set objwebedit = nothing
set objpage = nothing
set objjbrowser = nothing
最後這裡要說明幾點:
1. 我看教程裡描述browser和page是用:browser(「micclass:=browser」).page("micclass:=page"),
但是我在qtp裡這樣寫的時候會出現cannot find the "[ webedit ]" object's parent "[ browser ]" (class browser). 我也不知道問題出在**。望指教。
2. 這裡描述用到的屬性都是封裝介面的屬性,不是自身介面屬性。也就是object spy裡identification properties的properties屬性:
描述性程式設計
1.描述性程式設計的思想 思想 物件沒有新增到物件庫,就用描述性程式設計的方法。如果有些物件無法新增到物件庫中,也可以用描述性程式設計。2.描述性程式設計的2種寫法 也可以多個屬性來確定乙個物件 屬性之間用逗號 英文狀態下的逗號 分開 browser micclass browser page mi...
QTP描述性程式設計
好久沒來寫東西了,說明這段時間在理論知識方面並沒有進步,呵呵 qtp描述性程式設計一直以來很模糊,今天終於有些明白,記錄下成果 下面是一段例項 描述性程式設計 set a description.create a micclass value link a text value 翻譯 物件的賦值,必...
Description描述性程式設計方法
description描述性程式設計方法 通過宣告描述性物件並給物件屬性賦值的方法,將物件屬性與執行語句分離開 description描述性程式設計方法也具有後續強迫性 首先建立description例項,來代表乙個測試物件的屬性描述 set objdialog description.create...