




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目 錄目錄11TestComplete安裝11.1安裝TestComplete破解TestCompleteVBS腳本調試器安裝22TestComplete概述42.1Testcomplete是什么?42.2TC如何工作43TC的IDE43.1Menus and Toolbars(菜單與工具欄)53.2Panels and Workspaces(面板和工作區)53.2.1Project Explorer53.2.2Object Brower(對象瀏覽器)63.2.3White Box Application和Black Box Application94創建一
2、個TC的Test Project94.1配置TC的參數94.2Project、Project Suite和Item104.32種Test114.4創建一個Test Project124.5制定測試計劃134.6增加testedApps134.7錄制測試144.8回放154.9查看執行結果155錄制腳本的講解165.1TestedApps.ZLHIS.Run175.2Call Delay(1505)175.3Call Sys.Process("ZLHIS+").frmSplash.VBObject("imgPic").Click(61, 6)175.4Ca
3、ll Sys.Process("ZLHIS+").frmUserLogin.txt_2.Click(47, 15)185.5Sys.Process("ZLHIS+").frmUserLogin.txt_2.wText = "zlhis"185.6Call Sys.Process("ZLHIS+").frmUserLogin.txt_2.Keys("Enter")185.7Sys.Process("ZLHIS+").frmUserLogin.TXT_.wText = "
4、;aqa"185.8Sys.Process("ZLHIS+").frmUserLogin.CMD_3.ClickButton185.9Sys.Process("ZLHIS+").frmSelClient.VBObject("cmdOK").ClickButton186腳本的改進:不需要的預計187腳本的改進:使用NameMapping197.1提供腳本的可讀性197.2Namemapping的創建方法197.3Namemapping創建步驟197.3.1操作測試程序,直到在出現測試界面。197.3.2點擊對象“探測”按鈕,出
5、現Object Properties窗口197.3.3指定測試對象207.3.4TC顯示對象屬性217.3.5點擊按鈕,在Object Brower中顯示對象227.3.6“父”對象提示窗口237.3.7Object Name Mapping的信息設置247.4Namemapping設置規則257.4.1Mapped Name規則257.4.2Description257.4.3對象的識別屬性(Selected)25241 TestComplete安裝1.1 安裝TestComplete7.5.2n 執行安裝testcomplete752ent.exe,安裝過程同其他軟件,安裝要求點擊下一步直
6、到完成即可。n 安裝后,將TestComplete7.20.exe復制到TectComplete安裝目錄中的bin目錄下用于破解。1.2 破解TestComplete7.5.2n 運行TestComplete7.20.exe,出現注冊界面n 打開破解工具AutomatedQA.TestComplete.Keymaker,如圖:u 選擇Edition下的Enterpriseu 點擊Generateu 然后分別復制破解軟件下的User name、Company name、Registration Code 并粘貼在TC彈出框的對應位置,點擊OK,完成注冊。說明:TestComplete7.20.e
7、xe啟動文件僅用于注冊,在實際使用TC過程中,都采用7.52的啟動文件1.3 VBS腳本調試器安裝n 由于我們的測試腳本使用的是VBS,第一次使用TC可能會提示是否下載VBS調試程序,如下圖:n 點擊Close,執行scd10en.exe2 TestComplete概述2.1 Testcomplete是什么?TestComplete(以下簡稱TC)是一個用于軟件自動測試的工具,可以用于軟件的單元測試、功能測試、分布式測試等等。業界類似的工具還有HP公司的QuickTest Professional(QTP)、IBM公司的Robot等。2.2 TC如何工作TC可以記錄人對軟件的鼠標、鍵盤操作,然
8、后通過腳本回放來模擬這些操作,達到模擬人來操作軟件。TC還可以訪問和檢查內存中windows對象的屬性;訪問和檢查數據庫的記錄,達到檢查軟件操作后是否符合預期結果。3 TC的IDE4213.1 Menus and Toolbars(菜單與工具欄)和VB的開發環境類似,工具欄可以自定義。3.2 Panels and Workspaces(面板和工作區)TC的用戶界面組織在一系列的控制面板上,包括多個工作區域3.2.1 Project Explorer包括2個工作區域l Project Explorer:顯示項目和項目組的內容Project Suite:TC的工程組Project:TC的工程Pro
9、ject Item:TC工程中的各種項目KeyWord Testing:關鍵字測試Log Results:測試執行結果l Code ExplorerUnit Metrics:代碼度量3.2.2 ObjectBrower(對象瀏覽器)1以列表的形式顯示了當前機器上的所有進程和窗口。若對應進程和窗口的屬性和方法能夠被TC內部識別出來,Object Browser面板就會顯示。換句話說,Object Browser能告訴你那些對象、方法和屬性是可測的,和怎樣取來測。1、 Process Tree Pane以樹形模型來組織被測對象。根結點是Sys(桌面應用程序和窗口),其實一個Porcess就對應一個
10、application(應用程序)。樹中顯示了機器中當前正在運行的Process,可以通過工具欄對Process進行Filter()。2、 右鍵菜單在Process tree 中選中對象,點鼠標右鍵,可以執行以下操作。比如Refresh(刷新)、Map the Object Name(建立對象的Namemapping,后續會重點講解)。3、 Object Properties在Process tree 中選中對象,點鼠標右鍵可以調用,工具欄上也可以調用。用于對程序對象進行探測分析,相當于Object Spy。是使用TC中重要功能,后面會重點介紹。3.2.3 White Box Applicat
11、ion和Black Box Application白盒應用程序那種向Testcomplete提供其內部屬性和方法的應用程序叫做白盒應用程序或者開合應用程序。它們用作標示,顯示在對象瀏覽器上。為了突出白盒應用程序的窗口和控件,Testcomplete使用了特別的命名方式,可以反映出控件或窗體的類型、在源碼中定義的名稱。例如,ZLHIS的導航臺窗體,TC識別為:VBObject("frmBrower")黑合應用程序黑合應用程序指的是不提供訪問它們內部方法和屬性的應用程序。它們的命名包括windows class name, windows text 或title (captio
12、n) ,和它的index。控件的命名方式和窗口的命名方式類似,因為就操作系統而言,控件只是窗口的類型之一。4 創建一個TC的Test Project4.1 Project、Project Suite和Iteml Project:和VB的工程類似,是TC的Script(腳本)和其他Item的一個容器。l Project Suites:和VB的工程組類似,是Project的容器l Item:TC的工程文件,和VB類似,包含多種類型的Item,我們的測試中基本只用到4中Itemn Events:事件n Namemapping:測試對象庫n Script:測試腳本n TestApps:測試程序4.2
13、2種Testl KeyWord Test:n TC提供的一種測試腳本類型n 使用可視換的設計方式設計n 對VBScript、C#等編程語言不熟悉的人也可以設計測試腳本。l Script Testn 另一種測試腳本類型n 直接編寫腳本語句來實現測試n 需要對VBScript、C#等編程語言熟悉。n 我們統一使用Script Test類型。不使用keyword test。4.3 代碼模板(Code Templates)l 輔助編寫代碼,按“Ctrl+j”可以調出l 代碼模板:常用代碼段得示例,比如選擇“SUB”后,TC會根據模板補上“End Sub”導入自定義的代碼模板4.4 創建一個Test P
14、roject在菜單欄選擇File | New | New Project這會調用創建新項目的對話框。這個對話框由兩種工作模式:簡單(Simple)和典型(Classic)。在簡單模式是默認的模式,對話框包括了3個輸入文本框,你可以填上項目名、路徑和腳本語言。在典型模式下,你也可以定義項目組的名稱(project suite name)、選擇項目模板(projects template)和項目項(project items)。l project name:TC工程的名稱l Language:測試腳本使用的語言,我們同樣使用VBScript。l Location:TC工程存儲的位置4.5 制定測試
15、計劃l 定義測試目標:制定哪些功能需要被測試。目標越清晰,測試越簡單、越有效。大型的、要處理大量程序行為的測試非常的難以創建和維護。創建一個目標明確的、簡單的測試更有好處。一旦你建立了很多簡單的測試,你可以將它們組織到一個更大的測試里面。一個測試最后做做簡單的測試,一個復雜的程序功能有多個簡單的測試組成。l 計劃測試步驟:設計和決定運行哪些操作來達到測試的目標。包括測試前期準備,比如錄入測試執行需呀的數據,測試過程的操作步驟等。l 計劃檢查點的動作:在應用程序執行了一些操作之后,應用程序將會發生一些改變:在程序窗口的數據可能會被改變,一個新的窗口被創建、數據庫的記錄被改變等。測試執行后檢查這些
16、變化是否符合預期的結果。l 記錄測試結果:TC會自動記錄測試結果,另一方面可以使用TC提供的方法來記錄測試結果。通過而是結果可以發現被測試程序是否有錯誤,錯誤的具體內容是什么。4.6 增加testedAppsl 在Project Explorer中雙擊打開TestedAppsl 點鼠標右鍵執行”New Item“l 選擇待測試的程序啟動文件進行添加4.7 錄制測試在不知道如何編寫通過TC操作軟件的腳步的時候,可以通過TC錄制對軟件的操作過程。l 啟動錄制在Testcomplete的主菜單或者測試引擎工具欄點擊Test | Record | Record Script。注意是“Record Sc
17、ript”,不是“Record KeyWord Scritp”。或者點擊工具欄按鈕l 錄制啟動后在屏幕上顯示 Recording toolbar這個工具欄包括了一些附加功能,你可以在錄制中使用,暫停或停止錄制,填寫注釋等。l 按測試步驟執行操作n 等待出現登錄窗口n 輸入用戶名:*n 輸入密碼:*n 點確定按鈕l 點“Stop ”停止錄制4.8 回放執行方式1:點擊“Run Current Routine”按鈕方式2:設置Test IteStep In、Step Out、Watch List:和VB類似4.9 查看執行結果l 打開Logsl 查看執行結果n TC通過Test Log來記錄執行結
18、果,Log分為u Error:錯誤信息u Warning:警告信息u Message:消息信息u Event:事件信息u Image:圖片信息n 雙擊Log信息,可以定位到產生參數信息的腳本語句。5 錄制腳本的講解5.1 TestedApps.*.Runl 啟動執行測試的程序,這里就是執行*.exe。5.2 Call Delay(1505)l 等待延時,也叫“思考時間”。l 一方面用于模擬人工的操作。因為腳本回放的操作是很快的。而人的操作相對要慢一些。l 另一方面,有些情況下,由于網絡、數據庫等原因,執行一個操作后,需呀等待一定時間,才能進行后續操作。比如保存數據時,點擊“保存”按鈕后,不可能
19、立即就點“退出”按鈕。l TC在錄制腳本是,可以自動加上“思考時間”,也可以不自動加上。在Tools|Options|Enginges|Recording中設置或取消設置“Real-Time mode”l5.3 Call Sys.Process("*").frmUserLogin.txt_2.Click(47, 15)l 鼠標點擊用戶名5.4 Sys.Process("*").frmUserLogin.txt_2.wText = "admin"l 輸入用戶名l 這是TC封裝的一種輸入方法,這種輸入方法不產生Key事件。5.5 Call
20、 Sys.Process("*").frmUserLogin.txt_2.Keys("Enter")l 在用戶名文本框中“輸入”內容l 這是TC封裝的另一種輸入方法,這種輸入方法產生Key事件。5.6 Sys.Process("*").frmUserLogin.TXT_.wText = "admin"l 輸入密碼5.7 Sys.Process("*").frmUserLogin.CMD_3.ClickButtonl 點擊“確定”按鈕5.8 Sys.Process("*").f
21、rmSelClient.VBObject("cmdOK").ClickButtonl 點擊另一個“確定”按鈕(站點選擇)l 站點選擇不一定出現6 腳本的改進:不需要的語句l Call Sys.Process("*").frmUserLogin.txt_2.Click(47, 15)n 可以不選中用戶名,就執行輸入l Sys.Process("*").frmSelClient.VBObject("cmdOK").ClickButtonn 如果預期站點選擇窗口不出現,就可以取消這句。7 腳本的改進:使用NameMapp
22、ing7.1 腳本一些問題A. Sys.Process("*").frmUserLogin.txt_2.wText = "admin"B. Aliase.Base.frmUserLogin.txtUserName.wText=”admin”l 上面2句中,明顯B更容易理解,特別是對腳本維護人員來說。l 由于TC是按對象樹來操作測試對象的,有些測試對象可能在樹的深層中,使用時對象的名稱就會很長。不容易記憶。7.2 Namemapping的創建方法l TC提供自動創建(在錄制是就自動創建)和手工創建兩種方式。l 因為自動創建在使用對象識別屬性、對象命名等方面
23、無法標準化,我們必須使用手工創建的方式。l 取消“Map Object names automatically”的設置。7.3 Namemapping創建步驟7.3.1 操作測試程序,直到在出現測試界面。7.3.2 點擊對象“探測”按鈕,出現Object Properties窗口7.3.3 指定測試對象l “拖動”式,點按鈕,按住鼠標左鍵不放,把鼠標拖動到某個測試對象上,該對象就會顯示一個紅框,在松開鼠標右鍵。l “點擊”式,點按鈕,然后版鼠標移動到測試對象上,測試對象顯示紅框,在按“Shift+Ctrl+A”鍵。7.3.4 TC顯示對象屬性TC識別的對象屬性在程序界面“高亮”顯示對象在Obj
24、ect Brower的對象樹中定位輸入屬性名稱查找7.3.5 點擊按鈕,在Object Brower中顯示對象然后點擊鼠標右鍵,執行“Map the Object Name”7.3.6 “父”對象提示窗口l TC的測試對象是一個“樹”l 如果選擇建立Namemapping的是一個子對象,而它的“父”對象沒有建立Namemapping是,會出現提示創建各級父對象的窗體7.3.7 Object Name Mapping的信息設置對象識別屬性對象的描述對象的Map名稱對象的實際屬性把對象的實際屬性設置為識別屬性或取消識別屬性l 點擊“OK”完成Namemapping創建7.4 Namemapping
25、的使用Namemapping創建好后,可以在腳本中使用了。錄制時:Sys.Process("*").frmUserLogin.txt_2.wText = "admin"現在可以修改為:NameMapping.Sys.*.frmUserLogin.txtUser.wText = "admin"7.5 Aliases的使用Namemapping相當于一個對象倉庫,把測試的對象都存儲在“倉庫”中了(使用過QTP的就知道對象倉庫的概念)。對象倉庫的對象使用還是有一個麻煩,因為對象倉庫中是按對象的樹形結構存儲和使用的。對象的名稱可能還是很長。T
26、C提供了一個Aliase,可以為對象建立一個“別名”樹。別名樹在創建Namemapping時就創建了,樹的結構和Namemapping一樣。可以調整Aliase的結構,一個對象也可以建立多個Aliase7.5.1 Aliases的創建方法1. 使用鼠標在Mapped Objects中選中對象,然后拖動到Aliase區域中相應的位置2. 松開鼠標如果拖動的對象有子對象,會詢問是否創建所有子對象的Aliases7.5.2 Aliases的結構調整Aliases創建的缺省樹形結構和Namemapping一樣,可以調整結構。調整方法:鼠標右鍵拖動7.5.3 Aliases刪除刪除Aliases時會詢問
27、是否刪除name mapping,這里一定注意,選擇“No to All”,否則會刪除name mapping,對象無法在使用了。8 腳本的改進:使用變量8.1 函數變量l 相當于VB的函數私有變量l 只在函數內部有效l 可以不聲明就使用l VBScript中,只有Variant這一種數據類型8.2 腳本變量l 相當于VB種的Public變量l 可以在腳本文件的所有函數中有效l 在函數文件頭聲明或賦值8.3 Project變量l 在一個工程中的所有腳本中都可以使用l 在TC設置1. 在Project Exploer中,雙擊Project1點鼠標右鍵增加變量點擊這里設置Project變量2. P
28、roject變量分為2類u Persistent Variables:持續變量,這類變量的值會保存下來,下次執行測試時有效。u 有這些數據類型u Temporary Variables:臨時變量,這類變量的值不會保存,只在一次測試執行時有效。u 有這些數據類型Ojbect:可以存儲一個對象Table:可以存儲一個2維的表格數據l 變量使用方法:Project.Variables.Var18.4 Project Sutie變量l 在所有工程的所有腳本中可以使用l 變量使用方法:ProjectSuite.Variables.Var1l 其他和Project變量相同9 TC的Project的存儲目錄結構9.1 Item的復用l 每個TC的Item可以屬于一個Pro
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 紅巨星暗物質伴星研究-洞察闡釋
- 2025年中國海風藤市場調查研究報告
- 虛擬現實增強智能倉儲系統-洞察闡釋
- 2025年中國桂魚數據監測研究報告
- 2025年中國木雕裝飾塊市場調查研究報告
- 2025年中國普通圓鋸片刀頭數據監測研究報告
- 2025年中國無水乙醇試劑市場調查研究報告
- 2025年中國散酒過濾器數據監測研究報告
- 2025年中國掛軌面板市場調查研究報告
- 2025年中國彩色電子復印白板市場調查研究報告
- 早產兒出院后的營養和喂養
- (人工智能)人工智能基礎考試大綱
- 大學英語說課比賽優秀模板
- 注漿機的說明書
- GB/T 5497-1985糧食、油料檢驗水分測定法
- GB/T 19089-2003橡膠或塑料涂覆織物耐磨性的測定馬丁代爾法
- GB/T 18443.1-2010真空絕熱深冷設備性能試驗方法第1部分:基本要求
- 二三級醫院放射科要求
- 危大工程巡視檢查記錄表(深基坑)
- 鋼網架結構安裝、拼裝施工方案
- Q∕SY 05262-2019 機械清管器技術條件
評論
0/150
提交評論