描述性程式設計的兩種寫法

2022-02-06 10:08:04 字數 2374 閱讀 3904

物件庫程式設計(orp)是乙個非常強大的功能,如果物件名字改變了,只需要進入物件庫修改物件,指令碼即可批量更新。

描述性程式設計(dp)不需要維護龐大的物件庫,而需要維護龐大的**,但是在某些情況下(比如物件不能新增到物件庫)它很有用。

下面通過乙個例子來學習如何進行描述性程式設計:

browser("

").page("

").webedit("

wd").set "

abcde

"browser(

"").page("

").webbutton("

").click

這時候開啟物件庫如下圖:

某些情況下會出現無法新增物件到物件庫的情況,這時候就需要用到描述性程式設計了。所以我們在這裡先把物件庫里的4個物件都刪除。好了,現在已經沒有物件供我們使用了。開始進行描述性程式設計了。它有2種方式:

一.使用 物件名(「屬性名1:=屬性值1」,「屬性名2:=屬性值2」)注意:這裡的的括號,逗號,冒號都必須是英文狀態下的。

上面的**轉換如下:

browser("

").page("

").webedit("

name:=wd

","html tag:=input

","html id:=kw1

").set "ad"

browser(

"").page("

").webbutton("

","html id:=su1

").click

注意:如果父物件描述了,子物件一定要描述,不然qtp會報錯。但是子物件如果描述了,父物件若被新增到物件庫中,可以不描述。

二.使用description物件

使用description物件可以返回包含一組property物件的properties集合物件。property物件由屬性名和值組成。然後,可以在語句中指定用返回的properties集合代替物件名(每個property物件都包含乙個屬性名和值)。

建立properties物件的語法如下:

set objdescription = description.create()
建立完畢後,就可以在執行會話期間在properties物件中新增,編輯,刪除或檢索屬性和屬性值了。

最開頭的**轉換如下:

set objbrowser =description.create()

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.這裡描述物件的括號內不需要加引號; 2.最後要釋放物件,可以從最裡面一層開始釋放到最外面一層。

最後這裡要說明幾點

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...