【正文】
WSID=本地主機(jī)名。SERVER=數(shù)據(jù)庫IP地址。set record=createobject()sql=select*from ibm_one_table sql,conDOif(record(ibm_table_column)=kai)then39。CSR=F。FRL=Lo。FDL=10。XSM=Default。DBQ=CESHI。Orocle方式: DRIVER={Oracle in OraHome92}。WSID=IBM。UID=sa。這時(shí)候的結(jié)束需要徹底,就使用該函數(shù),這個(gè)函數(shù)不需要任何參數(shù),直接就停止所有運(yùn)行。 ExitAction用結(jié)束當(dāng)前Action的運(yùn)行,不牽涉其它的Action的運(yùn)行情況。33. Action的運(yùn)行和終止168。Copy進(jìn)來的Action要注意共享的對(duì)象庫包括了所有對(duì)象。 dim countNum countNum = (Global).GetRowCountfor i=0 to countNum1(i)Browser(Login Page).Page(Page_5).WebEdit().set DataTable((, dtLocalSheet)...............End30. Action的設(shè)置和調(diào)用在錄制腳本的時(shí)候通常會(huì)遇到這種情況,一個(gè)步驟需要反復(fù)執(zhí)行,但是其他步驟不需要跟著執(zhí)行,就比如活期開戶,一般分為柜員簽到、開戶操作(信息維護(hù))、柜員簽退這三步,只有信息維護(hù)這個(gè)步驟是需要重復(fù)執(zhí)行的,登陸和退出不需要重復(fù)執(zhí)行。 (d:\)end if 28. QTP加密Description ‘Encrypts a string. Syntax (Data)Argument Type Description ‘Data String The string to encrypt. Return Value String Example ‘In the following example, a password is taken from a database and encrypted using the Encrypt method, and then placed in the password edit box using the SetSecure method. pwd = GetPasswordfromSomewhere e_pwd = (pwd) Browser(dfgd).Dialog(pass).WinEdit(pwd).SetSecure e_pwd29. 參數(shù)表操作由QTP自動(dòng)生成的語句是這樣的:DataTable(Col,dtLocalSheet)DataTable(Col,dtGlobalSheet)其中,dtLocalSheet就是當(dāng)前Action的DataTable,dtGlobalSheet就是Global的DataTable,Col是列名還有很多寫法,比如DataTable(Col, Action2)就是讀取Action2的Col列。 ///獲取文件信息 39。判斷是否一個(gè)功能對(duì)象isready39。是否是合法的日期類型isempty39。 19. wintreeview一些操作選擇一個(gè)條目:(item)39。皆如上圖則罷,但是很多時(shí)候,遠(yuǎn)遠(yuǎn)不止這么幾行信息,所以使用適當(dāng)?shù)姆椒軌蚝艽蠓鹊奶岣吖ぷ餍?,相?dāng)于全選。 關(guān)鍵在于RO和TO,R,就是Runtime,T就是Testtime,O就是Object。二:如果對(duì)于提示信息比較長的,可以用mid(error_message,n,m)取一部份特征提示信息進(jìn)行驗(yàn)證,這樣我想可以節(jié)省處理時(shí)間,又可以避免長度以及空格等字符的處理。 End if一:對(duì)于Dialog中,雖然提示信息對(duì)象名稱是用戶密碼錯(cuò)誤,但如果信息對(duì)象名稱是“該用戶不存在”,不用更改會(huì)自動(dòng)識(shí)別,我想主要是錄制第一遍時(shí),“用戶密碼錯(cuò)誤”只是讓運(yùn)行時(shí)能找到這個(gè)控制,而不管它是什么內(nèi)容,因?yàn)樵趯?duì)象倉庫中,text不是決定該對(duì)象的屬性。 循環(huán)判斷,跳出條件是i=10Dim ii=1while ((window(iexplore).WinObject(OK).Exist) and (i10)) window(Iexplore).WinObject(OK).Clicki=i+1wend14. 驗(yàn)證彈出錯(cuò)誤類型 If Browser(teller).Dialog(Explorer).exist(1) thenem=browser(teller ).dialog(Explorer ).static(密碼錯(cuò)誤!).getRoproperty(text) If em((error_info))then 使用WaitProperty函數(shù),該函數(shù)的作用基本上和If……Exist(second)……End If比較類似。其實(shí)完全沒有必要等這么長時(shí)間,而且如果系統(tǒng)忽快忽慢怎么辦?總不能每次“跑腳本”之前都去修改一次吧,這樣腳本少還可以,腳本多(一個(gè)或多個(gè)測(cè)試集往往牽涉到幾十上百個(gè)測(cè)試腳本)了呢?這樣的話,腳本維護(hù)的代價(jià)太昂貴了!這種情況下可以考慮寫一些循環(huán)語句代替wait語句,這些語句寫得合理的話,會(huì)在系統(tǒng)響應(yīng)的第一時(shí)間做下一步操作,而長時(shí)間無響應(yīng)就可以通過跳出條件來終止運(yùn)行,報(bào)告系統(tǒng)連接超時(shí)就可以了。這種方法可忽略對(duì)象庫中的對(duì)象,不需要識(shí)別,前提是除去判斷語句;但是這種寫法——使用鍵盤模擬函數(shù)只能夠處理彈出對(duì)話框或msgbox中只有一個(gè)按鈕的情況,或者兩種但是默認(rèn)停留在需要點(diǎn)擊的地方。選擇相應(yīng)的插件類型(如Web、Activex等),然后對(duì)相應(yīng)的類(如WebElement)分別在強(qiáng)制屬性和輔助屬性里點(diǎn)擊“添加/刪除”按鈕,配置你所需要的能夠?yàn)橐粯?biāo)示你所需要的對(duì)象的屬性。東亞銀行前端交易頁面某些交易(例如RB7H,RB1904等)進(jìn)行時(shí)需要獲取webelement的變化的屬性值“innertext”,為了能夠?qū)⒔灰走M(jìn)行下去,只能使用方法三里的方法:刪除屬性 “innertext”,然后通過調(diào)整index的值來定位所需要獲取的屬性的屬性值所在的位置。168。這樣QTP運(yùn)行時(shí)會(huì)自動(dòng)查找對(duì)象進(jìn)行匹配,比較方便,不需要反復(fù)添加對(duì)象。第二部分 對(duì)象庫和對(duì)象屬性10. 對(duì)象識(shí)別和智能標(biāo)識(shí)對(duì)象的屬性識(shí)別主要來自QTP識(shí)別的網(wǎng)頁(或者其它)本身的控件設(shè)計(jì),因此對(duì)象的屬性是靈活多變的,有時(shí)候我們需要添加一個(gè)或多個(gè)屬性,有時(shí)需要?jiǎng)h除一個(gè)或多個(gè)屬性,具體的情形要根據(jù)當(dāng)時(shí)的情況而定。當(dāng)選擇“模擬錄制”或“低級(jí)錄制”時(shí),請(qǐng)考慮下列規(guī)則: 只有當(dāng) QuickTest 的正常錄制模式不能準(zhǔn)確錄制您的操作時(shí),才應(yīng)使用“模擬錄制”或“低級(jí)錄制”?!暗图?jí)錄制”對(duì)每個(gè)測(cè)試對(duì)象支持下列方法:WinObject 測(cè)試對(duì)象 Click、DblClick、Drag、Drop、TypeWindow 測(cè)試對(duì)象 Click、DblClick、Drag、Drop、Type、Activate、Minimize、Restore、Maximize 以“低級(jí)錄制”模式錄制的每個(gè)步驟都顯示在關(guān)鍵字視圖和專家視圖中。如果對(duì)象的位置對(duì)于您的測(cè)試或組件非常重要,請(qǐng)切換到“低級(jí)錄制”以使 QuickTest 能夠按照屏幕上的 x 坐標(biāo)和 y 坐標(biāo)錄制該對(duì)象。相應(yīng)的 Active Screen 將顯示在模擬錄制會(huì)話期間執(zhí)行的最后一個(gè)模擬步驟的結(jié)果。當(dāng)使用這種模式時(shí),QuickTest 將捕獲您在其中進(jìn)行錄制的窗口的最終狀態(tài)的 Active Screen 圖像。QuickTest 不會(huì)錄制在指定窗口外部執(zhí)行的任何單擊或鼠標(biāo)移動(dòng)。這些可能包括繪制鼠標(biāo)簽名或者使用通過拖動(dòng)鼠標(biāo)創(chuàng)建圖像的繪圖應(yīng)用程序。被測(cè)試對(duì)象初始狀態(tài):39。測(cè)試員:39。例如:39。 else micpass, 登陸錯(cuò)誤提示, 錯(cuò)誤提示信息正確. If (hint = hint_msg) Then hint_msg = Dialog(Login).Dialog(Flight Reservations).Static(Static).GetROProperty(text) If 如果彈出錯(cuò)誤提示框,通過對(duì)比hint ***********************************************************************Dim hint_msgDim hintDim ActualDialogPopupInvokeApplication D:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\39。* 最后修改日期: 2006101339。*************************************************************************39。開發(fā)和測(cè)試能力雙重提高,何樂而不為呢?QTP提供了java user,vb user,等語言類型的腳本,就是給我們開發(fā)腳本用的,而不是錄制用的。業(yè)務(wù)級(jí)的代碼讀起來總比協(xié)議級(jí)的代碼更易讓人理解,也更容易維護(hù),必要時(shí)可建立一個(gè)腳本庫。S 支持NS 不支持NA 不適用7. 規(guī)范例程腳本的生成方式就兩種,一種是自寫腳本,一種是錄制生成。 “XML 檢查點(diǎn)”檢查 XML 文件中的 XML 文檔的數(shù)據(jù)內(nèi)容,或檢查網(wǎng)頁和幀中的 XML 文檔的數(shù)據(jù)內(nèi)容。 “數(shù)據(jù)庫檢查點(diǎn)”檢查由您的應(yīng)用程序訪問的數(shù)據(jù)庫的內(nèi)容。例如,您可以檢查加載網(wǎng)頁所需的時(shí)間,或者檢查網(wǎng)頁是否包含損壞的鏈接。您可以添加“Alt”屬性檢查,檢查按照該規(guī)則要求具有“Alt”屬性的對(duì)象是否確實(shí)具有這樣的標(biāo)記。文本區(qū)域檢查點(diǎn)還在一些外部加載項(xiàng)環(huán)境中受到支持。 “文本區(qū)域檢查點(diǎn)”檢查文本字符串是否按照指定的條件顯示在 WindowsApplications 中所定義的區(qū)域內(nèi)。例如,假設(shè)您的應(yīng)用程序或網(wǎng)頁顯示句子:“從紐約到舊金山的航班”。表檢查點(diǎn)在 Web 和 ActiveX 環(huán)境中受到支持。 “表檢查點(diǎn)”檢查表內(nèi)部的信息。在單擊放大地圖的控制鍵后,您可以錄制所顯示的新地圖。168。 “圖像檢查點(diǎn)”檢查應(yīng)用程序或網(wǎng)頁中的圖像的值。標(biāo)準(zhǔn)檢查點(diǎn)會(huì)檢查各種對(duì)象,如按鈕、單選按鈕、組合框、列表等等。注意:XML 文件檢查點(diǎn)用于檢查特定的 XML 文件;XML 應(yīng)用程序檢查點(diǎn)用于檢查網(wǎng)頁中的 XML 文檔。數(shù)據(jù)庫檢查點(diǎn)檢查應(yīng)用程序或網(wǎng)站所訪問的數(shù)據(jù)庫內(nèi)容檢查數(shù)據(jù)庫查詢中的值是否正確。文本/文本區(qū)域檢查點(diǎn)檢查文本字符串是否顯示在網(wǎng)頁或應(yīng)用程序窗口中的適當(dāng)位置。表檢查點(diǎn)檢查表中的信息。了解檢查點(diǎn)類型檢查點(diǎn)類型描述用法示例標(biāo)準(zhǔn)檢查點(diǎn)檢查對(duì)象的屬性值。168。 使用“插入”菜單上的命令,或者單擊“測(cè)試”工具欄上的“插入檢查點(diǎn)”按鈕旁邊的箭頭。4. QTP常用快捷方式下表這些快捷方式是我們經(jīng)常用得到的,而其它的快捷方式記憶起來比較復(fù)雜,具體參見QTP的幫助文檔:Command Shortcut Key Function Record (普通錄制)F3 Starts a recording session. Run (運(yùn)行)F5 Starts a run session from the beginning or from the line at which the session was paused. Stop (停止)F4 Stops the recording or run session. Run from Step (叢當(dāng)前步驟運(yùn)行)Ctrl+F5 Starts a run session from the selected step. Analog Recording (模擬錄制)Shift+Alt+F3 Starts recording in analog recording mode. Low Level Recording(低級(jí)錄制) Ctrl+Shift+F3 Starts recording in low level recording mode. Object Repository(打開對(duì)象庫)Ctrl+ROpens the Object Repository dialog box.Step Into (單步調(diào)試運(yùn)行到)F11 Runs only the current line of the script. If the current line calls a method, the method is displayed in the view but is not performed. Step Over (跳出斷點(diǎn))F10 Runs only the current line of the script. When the current line calls a method, the method is performed in its entirety, but is not displayed in the view. Step Out (跳過斷點(diǎn))Shift+F11 Ru