日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

QTP - 描述性编程

發布時間:2024/8/26 c/c++ 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QTP - 描述性编程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
QTP - 描述性編程

描述性編程:

1、QTP的描述性編程能夠擺脫測試對象庫的限制,編寫出更為復雜、適應能力更強的測試腳本。

2、即不需要在倉庫晨定義,也能訪問和操作實際對象。

3、用描述性編程編寫的測試腳本在運行時,QTP會使用測試腳本中給出的對象描述來查找對象,查找的位置不是對象庫,而是與測試程序運行運行時QTP為其創建的測試對象版本過行匹配。

4、QTP提供了兩種描述性編程的開發方式,一種是“直接描述性”的方式,另一種是使用“Description”對象的方式。

?

例子:以Flight飛機訂票系統的登陸界面為測試頁面進行描述的

'錄制腳本 Dialog("Login").WinEdit("Agent Name:").Set "mercury" Dialog("Login").WinEdit("Password:").SetSecure "57e67e33ffdde8714dc762b2c1086326f59a21ca" Dialog("Login").WinButton("OK").Click Window("Flight Reservation").Close'初級描述性編程 Dialog("text:=Login").WinEdit("attached text:=Agent Name:").Set "mercury" Dialog("text:=Login").WinEdit("attached text:=Password:").SetSecure "57e67e33ffdde8714dc762b2c1086326f59a21ca" Dialog("text:=Login").WinButton("text:=OK").Click Window("regexpwndtitle:=Flight Reservation").close'在這里要注意有三點: '1)如果需要兩個以上特性來描述一個對象,需要使用逗號(,)對描述性語言進行分割 '2)使用:=來連接屬性和屬性值,并且:=兩邊不能有空格 '3)使用SPY查看對象的屬性名和屬性值(Tools -> Object Spy)
'對象型描述性編程 Dim descEditLogin Set descEditLogin = Description.Create() descEditLogin("Class Name").Value = "Dialog" descEditLogin("Regexpwndtitle").Value = "Login" Dialog(descEditLogin).WinEdit("Attached text:=Agent Name:").Set "mercury" Dialog(descEditLogin).WinEdit("Attached text:=Password:").Set "Mercury" Dialog(descEditLogin).WinButton("Class Name:=WinButton", "text:=OK").Click

?

?

使用自定義的環境變量

在File>>Settings>>Environment中選擇user-defined,增加一個變量?dlgLogin = “Login”?這樣腳本可以被修改為:

Dim descEditLogin Set descEditLogin = Description.Create() descEditLogin("Class Name").Value ="Dialog" descEditLogin("Regexpwndtitle").Value =Environment.Value("dlgLogin")Dialog(descEditLogin).WinEdit("Attachedtext:=Agent Name:").Set "Holly" Dialog(descEditLogin).WinEdit("Attachedtext:=Password:").Set "Mercury" Dialog(descEditLogin).WinButton("ClassName:=WinButton", "text:=Cancel").Click

?


當然,參數化的方式很多,這邊介紹的是使用環境變量
?
從XML文件導入環境變量,可以使用手工導入,也可以使用LoadFromFile自動導入

<Enviroment><Variable><Name>dlgLogin</Name><Value>Login</Value></Variable> </Environment>?

總結:

優點是當對象的一些屬性變更后,腳本更容易維護。

比如說對于一個通用對象,比如save, reset, cancel等按鈕,一個頁面有3個,30個頁面就有90個對象,

假如save變成保存,reset變成重置,cancel變成取消,那么對象庫就會產生很大的變動。

而使用了描述性編程只需要在導入的XML文件中修改一個值就可以了。

?

posted on 2016-09-24 21:47 Ethon 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/wakey/p/5904207.html

總結

以上是生活随笔為你收集整理的QTP - 描述性编程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。