版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
項目八對Windows計算器程序進(jìn)行功能測試8.1問題情境8.2問題分析8.3任務(wù)的設(shè)計與實施8.4知識總結(jié)8.5應(yīng)用實踐
利用QTP(QuickTestProfessional)工具對Windows操作系統(tǒng)中的計算器程序進(jìn)行功能測試。8.1問題情境
Windows操作系統(tǒng)中的計算器如圖8-1所示,可以完成標(biāo)準(zhǔn)的數(shù)學(xué)運算和高級的科學(xué)計算,此次將針對標(biāo)準(zhǔn)的數(shù)學(xué)運算功能來測試。8.2問題分析圖8-1Windows操作系統(tǒng)中的計算器
8.3.1創(chuàng)建測試
(1)首先啟動Windows計算器程序。在QTP主界面中依次選擇“Resources—ObjectRepository”項,出現(xiàn)如圖8-2所示界面。8.3任務(wù)的設(shè)計與實施圖8-2編輯對象庫
(2)在這個界面中依次選擇“Object-AddObjecttoLocal”項,然后用鼠標(biāo)光標(biāo)單擊計算器的“1”按鈕,出現(xiàn)如圖8-3所示界面。圖8-3對象選擇
(3)在圖8-3所示界面中,單擊“OK”按鈕,則出現(xiàn)如圖8-4所示界面,計算器的“1”按鈕被添加到對象庫中。圖8-4添加對象到對象庫中
(4)重復(fù)步驟(2)和步驟(3),分別把計算器的“
+
”按鈕、“2”按鈕、“
=
”按鈕、“Edit”控件添加到對象庫中,如圖8-5所示。圖8-5添加其他對象后的對象庫
(5)關(guān)閉圖8-5所示的界面,返回到QTP的主界面,在“KeywordView”中的“Item”列,單擊“Action1”的下一行,選擇“計算器”,選擇“Activate”操作,如圖8-6所示。圖8-6編輯測試步驟
(6)重復(fù)步驟(5),分別把其他按鈕的單擊操作添加到測試步驟中來,如圖8-7所示。這樣就形成了一個“1
+
2
=
”的計算器操作序列。以同樣的方式可以完成其他測試用例的創(chuàng)建。圖8-7添加其他按鈕測試步驟
(7)定位到最后一個步驟,然后依次選擇“Insert
-Checkpoint-
StandardCheckpoint”項,出現(xiàn)如圖8-8所示的界面。圖8-8編輯“Checkpoint”在圖8-8所示的界面中,選擇“text”項,設(shè)置編輯器“Constant”值為“3.”(注意“3”后面的點號),然后選擇“Aftercurrentstep”項,單擊“OK”按鈕,則出現(xiàn)如圖8-9所示的界面。圖8-9插入驗證步驟這樣就形成了一個具備驗證檢查功能的測試腳本,其測試目的是驗證計算器1
+
2的結(jié)果是否等于3。這個過程是完全手工創(chuàng)建的,實際上可以通過錄制的方式完成操作步驟的添加或者通過直接編寫VBScript腳本的方式來創(chuàng)建測試。切換到“ExpertView”可以看到剛才創(chuàng)建的VBScript測試腳本,如圖8-10所示。圖8-10“ExpertView”界面8.3.2運行測試
在編輯好測試步驟和驗證點后,就可以運行測試腳本。按F5鍵(運行的快捷鍵),出現(xiàn)如圖8-11所示界面。圖8-11運行結(jié)果文件設(shè)置界面在如圖8-11所示的界面中,可以設(shè)置運行結(jié)果的存放路徑,如果腳本中定義了輸入?yún)?shù),還可以在運行前設(shè)置輸入?yún)?shù)。8.3.3分析結(jié)果
運行測試后,將出現(xiàn)如圖8-12所示的測試結(jié)果界面。圖8-12測試結(jié)果界面在圖8-12所示界面中,可以看到測試運行的迭代次數(shù)、每次迭代的結(jié)果等信息。在測試結(jié)果界面右側(cè)還展示了每個測試步驟的運行過程信息,如圖8-13所示。圖8-13詳細(xì)測試結(jié)果
8.4.1自動化測試概述
隨著計算機(jī)日益被廣泛地應(yīng)用,客戶希望軟件產(chǎn)品能滿足其業(yè)務(wù)的所有需求,所以許多應(yīng)用軟件,特別是行業(yè)應(yīng)用軟件需要定制,并且客戶希望在短期內(nèi)就能滿足其業(yè)務(wù)需要,這導(dǎo)致許多軟件開發(fā)企業(yè)要在盡可能短的時間內(nèi)充分地測試軟件,提高開發(fā)效率和軟件質(zhì)量。在這樣的需求下,自動化測試技術(shù)開始發(fā)展并逐步投入使用。目前,全球越來越多的軟件企業(yè)在產(chǎn)品開發(fā)過程中都采用了自動化方法測試軟件。8.4知識總結(jié)
1.自動化測試的意義
通常,軟件測試的工作量很大。據(jù)統(tǒng)計,測試會占用大約40%
的開發(fā)時間。對一些可靠性要求非常高的軟件,測試時間甚至占到開發(fā)時間的60%。而測試中的許多操作是重復(fù)性、非智力性和非創(chuàng)造性的,并要求做準(zhǔn)確細(xì)致的工作,計算機(jī)最適合于代替人工去完成這樣的任務(wù)。
軟件自動化測試是相對手工測試而存在的,主要通過所開發(fā)的軟件測試工具、腳本等來實現(xiàn),具有良好的可操作性、可重復(fù)性和高效率等特點。要理解為什么要進(jìn)行自動化測試,可以從以下兩個方面考慮:
(1)手工測試的局限性。
通過手工測試無法做到覆蓋所有代碼路徑。
簡單的功能性測試用例在每一輪測試中都不能少,而且具有一定的機(jī)械性、重復(fù)性,工作量往往較大。
許多與時序、死鎖、資源沖突、多線程等有關(guān)的錯誤,通過手工測試很難捕捉到。
進(jìn)行系統(tǒng)負(fù)載、性能測試時,需要模擬大量數(shù)據(jù)或大量并發(fā)用戶等各種應(yīng)用場合,這很難通過手工測試來進(jìn)行。
進(jìn)行系統(tǒng)可靠性測試時,需要模擬系統(tǒng)運行幾年甚至幾十年,以驗證系統(tǒng)能否穩(wěn)定運行,這也是手工測試無法模擬的。
如果有大量(幾千)的測試用例,需要在短時間內(nèi)完成,手工測試幾乎不可能做到。
(2)軟件自動化測試所帶來的好處有以下幾方面:
縮短軟件開發(fā)測試周期,可以讓產(chǎn)品更快地投放市場。
充分利用硬件資源,測試效率高。
節(jié)省人力資源,降低測試成本。
增強(qiáng)測試的穩(wěn)定性和可靠性。
提高軟件測試的準(zhǔn)確度和精確度,增加軟件信任度。
軟件測試工具使測試工作相對比較容易,且能產(chǎn)生更高質(zhì)量的測試結(jié)果。
手工不能做的事情,自動化測試能做,例如負(fù)載、性能測試等。
軟件測試執(zhí)行自動化進(jìn)程,絕不是因為厭煩了重復(fù)的測試工作,而是因為測試工作的需要,更準(zhǔn)確地說是回歸測試和系統(tǒng)測試的需要。
2.自動化測試的定義
自動化測試的定義是使用一種自動化測試工具來驗證各種軟件測試的需求,它包括測試活動的管理與實施。
在進(jìn)行自動化測試前,首先要建立一個對軟件測試自動化的認(rèn)識觀。軟件測試能提高測試效率、覆蓋率和可靠性等,它雖然具有很多優(yōu)點,但也只是測試工作的一部分,是對手工測試的一種補(bǔ)充。自動化測試絕不能代替手工測試,它們各有特點,其測試對象和測試范圍都不一樣:
(1)在系統(tǒng)功能邏輯測試、驗收測試、適用性測試、涉及物理交互性的測試中,多采用黑盒測試的手工測試方法。
(2)單元測試、集成測試、系統(tǒng)負(fù)載測試、性能測試、穩(wěn)定性測試、可靠性測試等比較適合采用自動化測試。
(3)不穩(wěn)定軟件的測試、開發(fā)周期很短的軟件、一次性的軟件等不適合采用自動化測試,因為自動化測試工具本身并沒有想象力和靈活性。根據(jù)報道,自動化測試只能發(fā)現(xiàn)15%的缺陷,而手工測試可以發(fā)現(xiàn)85%的缺陷。
(4)自動化測試工具在進(jìn)行功能測試時,其準(zhǔn)確的含義是回歸測試工具,這時它不能發(fā)現(xiàn)更多的新問題,但可以保證對已經(jīng)測試過部分的準(zhǔn)確性和客觀性。
(5)多數(shù)情況下,手工測試和自動化測試應(yīng)該相結(jié)合,以最有效的方法來完成測試任務(wù)。
3.自動化測試的原理和方法
軟件自動化測試可以實現(xiàn)的基礎(chǔ)是通過設(shè)計特殊程序模擬測試人員對計算機(jī)的操作過程、操作行為,或者類似于編譯系統(tǒng)那樣對計算機(jī)程序進(jìn)行檢查的機(jī)制來完成。
軟件自動化測試的主要實現(xiàn)方法有直接對代碼進(jìn)行靜態(tài)和動態(tài)分析、測試過程的捕獲和回放、測試腳本技術(shù)等。
(1)代碼分析技術(shù)。代碼分析的原理類似于高級編譯系統(tǒng)的原理,需針對不同的高級語言來構(gòu)造分析工具,在工具中定義類、對象、函數(shù)、變量等的定義規(guī)則及語法規(guī)則;在分析時對代碼進(jìn)行語法掃描,找出不符合編碼規(guī)范的地方;根據(jù)設(shè)定好的質(zhì)量模型評價代碼的質(zhì)量,對軟件進(jìn)行測試。
(2)捕獲和回放。捕獲是將用戶每一步的操作都記錄下來。一般記錄程序用戶界面的像素坐標(biāo)或程序顯示對象(窗口、按鈕、滾動條等)的位置,以及相對應(yīng)的操作、狀態(tài)變化或是屬性變化。然后將所有的記錄轉(zhuǎn)換為一種腳本語言所描述的過程,以模擬用戶的操作?;胤艜r,將腳本語言所描述的過程轉(zhuǎn)換為屏幕上的操作,然后將被測系統(tǒng)的輸出記錄下來,將其同預(yù)先給定的標(biāo)準(zhǔn)結(jié)果比較。這樣可以大大減輕測試的工作量。
(3)腳本技術(shù)。腳本是一組測試工具執(zhí)行的指令集合,也是計算機(jī)程序的一種形式。腳本可以通過錄制對測試軟件的操作來產(chǎn)生,然后再做修改,這樣可以減少腳本編程的工作量。當(dāng)然,也可以直接用腳本語言編寫腳本,然后執(zhí)行腳本,相當(dāng)于執(zhí)行了被測試的程序,以達(dá)到完成測試任務(wù)的目的。8.4.2QTP介紹
QTP(QuickTestProfessional)是新一代自動化測試解決方案,采用了關(guān)鍵詞驅(qū)動(Keyword
Driven)測試的理念,能完全簡化測試的創(chuàng)建和維護(hù)工作。QuickTest關(guān)鍵詞驅(qū)動方式的獨特之處在于,QTP可以通過一個整合的腳本和糾錯環(huán)境,擁有對基礎(chǔ)測試腳本和對象屬性的完全訪問權(quán)限,這些腳本和糾錯環(huán)境與關(guān)鍵詞視圖(KeywordView)可以互為同步。
QTP同時滿足了技術(shù)型和非技術(shù)型用戶的需求,讓各個公司有能力部署更高質(zhì)量的應(yīng)用,同時也使部署的速度更快、費用更低、風(fēng)險也更小。QTP和新的自動化測試系統(tǒng)MercuryBusinessProcessTesting的緊密結(jié)合,可以將非技術(shù)型的業(yè)務(wù)專家引入質(zhì)量流程,這一重大的引入可以將IT和業(yè)務(wù)更好地融合,最終建立起更出色的應(yīng)用。
1.QTP的工作原理
QTP易于操作,即使是初級的測試人員也能在短時間內(nèi)掌握它。測試人員可以使用無需腳本的關(guān)鍵詞視圖來表現(xiàn)測試的每個步驟,并由此創(chuàng)建一個測試。還可以通過QTP所集成的錄制能力來捕獲測試步驟。該產(chǎn)品用簡單的英語以文檔形式記錄每個步驟。傳統(tǒng)的腳本記錄工具所生成的腳本不易修改,與此不同的是,QTP的關(guān)鍵詞驅(qū)動方式能讓用戶便捷地插入、修改、驅(qū)動數(shù)據(jù)(Data-Drive)和移除測試步驟。
QTP可以自動引入檢查點來驗證應(yīng)用的屬性和功能點,比如確認(rèn)輸出或檢查鏈接的有效性。在關(guān)鍵詞視圖的每一個步驟中,活動屏幕可以顯示被測應(yīng)用程序在該步驟中的確切狀態(tài),還可以為任意對象加入幾種檢查點。僅需在活動屏幕中點擊該對象,就可以驗證該組件行為是否達(dá)到了預(yù)期目標(biāo)。
QTP擁有和Excel同樣完善的功能特性,是一個集成的電子數(shù)據(jù)表格,測試人員可以使用該數(shù)據(jù)表格創(chuàng)建多種重復(fù)測試,無需編程就可以擴(kuò)展測試案例的覆蓋面。測試數(shù)據(jù)可以通過鍵入的方式輸入,或從數(shù)據(jù)庫、數(shù)據(jù)表格或文本文檔中導(dǎo)出。
2.QTP的安裝
(1)啟動安裝,雙擊setup圖標(biāo),如圖8-14所示。選擇QuickTestProfessional安裝程序,進(jìn)入下一步。圖8-14啟動安裝界面
(2)安裝QuickTestProfessional的必備程序。如圖8-15所示,安裝QuickTestProfessional的必備程序
.NetFramework2.0程序。其安裝界面如圖8-16所示。圖8-15安裝QuickTestProfessional的必備程序圖8-16.NetFramework2.0安裝界面
(3)安裝完
.NetFramework2.0以后進(jìn)入QTP安裝首界面,如圖8-17所示。圖8-17QTP安裝首界面
(4)進(jìn)入許可協(xié)議界面,如圖8-18所示。選擇“我接受該許可證協(xié)議中的條款”,然后點擊“是”,進(jìn)入下一步。圖8-18許可協(xié)議界面
(5)選擇許可證類型,如圖8-19所示。圖8-19許可證類型界面在圖8-19所示的界面中,用戶根據(jù)實際情況選擇適合自己的許可證類型。本案例中選擇“單機(jī)版:請使用為此計算機(jī)創(chuàng)建的許可證?!?,點擊“下一步”,進(jìn)入注冊信息界面。
(6)注冊信息,如圖8-20所示。圖8-20注冊信息界面在圖8-20所示界面中,輸入相應(yīng)的注冊信息,點擊“下一步”。
(7)啟用QuickTestProfessional遠(yuǎn)程執(zhí)行,如圖8-21所示。圖8-21啟用QTP遠(yuǎn)程執(zhí)行界面如圖8-21所示,選擇“自動設(shè)置這些選項”,點擊“下一步”。
(8)設(shè)置InternetExplorer高級選項,如圖8-22所示。圖8-22設(shè)置InternetExplorer高級選項界面在如圖8-22所示界面中,選擇“我將手動設(shè)置所需選項”,點擊“下一步”。
(9)進(jìn)入調(diào)試支持界面,如圖8-23所示。圖8-23調(diào)試支持界面在如圖8-23所示界面中,點擊“下一步”。
(10)選擇安裝類型,如圖8-24所示。圖8-24安裝類型界面在如圖8-24所示界面中,選擇“完全”(用戶也可以根據(jù)需要選擇自定義安裝類型),點擊“下一步”。
(11)選擇安裝目標(biāo)位置,如圖8-25所示。圖8-25選擇目標(biāo)位置界面在圖8-25所示界面中,點擊“瀏覽”,選擇安裝的目標(biāo)位置,彈出如圖8-26所示界面。圖8-26目標(biāo)位置文件夾不存在界面在圖8-26所示界面上點擊“是”,然后點擊“開始”,進(jìn)入下一步。
(12)完成安裝,如圖8-27所示。圖8-27安裝狀態(tài)界面圖8-28客戶注冊界面在圖8-28所示界面中直接點擊“下一步”,進(jìn)入如圖8-29所示的界面。圖8-29重啟電腦界面在圖8-29所示界面中,選擇“是,我想現(xiàn)在重啟電腦”,點擊“完成”,重啟計算機(jī),完成安裝,如圖8-30所示。圖8-30安裝完成界面雙擊桌面上的“QTP”圖標(biāo),顯示QTP運行主界面,如圖8-31所示。圖8-31QTP運行主界面
3.QTP程序主界面介紹
在創(chuàng)建測試之前,先了解一下QTP的主界面,如圖8-31所示。
QTP主界面包含標(biāo)題欄、菜單欄、文件工具條等幾個界面元素。下面簡單解釋各界面元素的功能。
(1)標(biāo)題欄:顯示了當(dāng)前打開的測試腳本的名稱。
(2)菜單欄:包含了QTP的所有菜單命令項。
(3)文件工具條:包含了如圖8-32所示的幾個按鈕。
圖8-32文件工具條按鈕介紹
(4)測試工具條:包含了在創(chuàng)建、管理測試腳本時要使用的按鈕,如圖8-33所示。
圖8-33測試工具條按鈕介紹
(5)調(diào)試工具條:包含了調(diào)試測試腳本時要使用的工具條,如圖8-34所示。
圖8-34調(diào)試工具條按鈕介紹
(6)測試腳本管理窗口:提供了兩個可切換的窗口,分別通過圖形化方式和VBScript腳本方式來管理測試腳本。
(7)
DataTable窗口:用于參數(shù)化測試。
(8)狀態(tài)欄:顯示測試過程中的狀態(tài)。
4.QTP工作流程
(1)錄制測試腳本前的準(zhǔn)備。在測試前需要確認(rèn)應(yīng)用程序及QTP是否符合測試需求,確認(rèn)如何對應(yīng)用程序進(jìn)行測試,例如要測試哪些功能、操作步驟、預(yù)期結(jié)果等。同時也要檢查一下QTP的設(shè)定,例如TestSettings以及Options對話窗口,以確保QTP會正確地錄制并存儲信息,并確認(rèn)QTP以何種模式存儲信息。
(2)錄制測試腳本。操作應(yīng)用程序或瀏覽網(wǎng)站時,QTP會在KeywordView中以表格的形式顯示錄制的操作步驟。每一個操作步驟都是使用者在錄制時的操作,例如在網(wǎng)站上點擊的鏈接,或者在文本框中輸入的信息。
(3)加強(qiáng)測試腳本。在測試腳本中加入檢查點,可以檢查網(wǎng)頁的鏈接、對象屬性或者字符串,以驗證應(yīng)用程序的功能是否正確。
將錄制的固定值以參數(shù)取代,使用多組數(shù)據(jù)測試程序。通過使用邏輯或者條件判斷式,可以進(jìn)行更復(fù)雜的測試。
(4)對測試腳本進(jìn)行調(diào)試。修改過測試腳本后,需要對測試腳本進(jìn)行調(diào)試,以確保測試腳本能被正常并且順暢地執(zhí)行。
(5)在新版應(yīng)用程序或者網(wǎng)站上執(zhí)行測試腳本。通過執(zhí)行測試腳本,QTP會在新版應(yīng)用程序或者網(wǎng)站上執(zhí)行測試,檢查應(yīng)用程序的功能是否正確。
(6)分析測試結(jié)果。分析測試結(jié)果,找出問題所在。
(7)測試報告。在完成測試后,QTP會自動地生成測試結(jié)果報告。8.4.3TestComplete介紹
TestComplete是一款由美國AutomatedQA公司生產(chǎn)的自動化功能測試工具。該工具同時支持對Win32、.Net、WPF、Web類型的應(yīng)用程序的測試,也支持很多平臺和語言,例如
.Net、Java、Delphi和C++
等。
安裝TestComplete需要滿足以下硬件和軟件要求:
CPU:奔騰2400
MHz以上的處理器;
內(nèi)存:128
MB以上;
操作系統(tǒng):Windows98、WindowsME、Windows2000、WindowsXP、WindowsServer2003、WindowsVista;
瀏覽器:IE5.0以上。
1.安裝步驟
(1)雙擊setup圖標(biāo)開始安裝,出現(xiàn)準(zhǔn)備安裝界面,如圖8-35所示。準(zhǔn)備安裝界面用以檢查計算機(jī)系統(tǒng)相應(yīng)的軟件資源是否全都具備。圖8-35準(zhǔn)備安裝界面圖8-36TestComplete安裝歡迎界面
(2)在TestComplete安裝歡迎界面上點擊“Next”按鈕進(jìn)入下一步,出現(xiàn)如圖8-37所示的協(xié)議聲明界面。圖8-37協(xié)議聲明界面
(3)在協(xié)議聲明界面選擇“Iacceptthetermsofthelicenseagreement”,然后點擊“Next”按鈕進(jìn)入下一步,出現(xiàn)如圖8-38所示的設(shè)置用戶信息界面。圖8-38設(shè)置用戶信息界面
(4)在設(shè)置用戶信息界面輸入相應(yīng)的信息,然后點擊“Next”按鈕,進(jìn)入選擇安裝路徑界面,如圖8-39所示。圖8-39選擇安裝路徑界面
(5)在選擇安裝路徑界面,用戶根據(jù)自己的實際情況,選擇相應(yīng)的路徑并點擊“Next”按鈕,進(jìn)入應(yīng)用程序文件夾設(shè)置界面,如圖8-40所示。圖8-40應(yīng)用程序文件夾設(shè)置界面
(6)在應(yīng)用程序文件夾設(shè)置界面,用戶可根據(jù)實際情況選擇或使用默認(rèn)設(shè)置,之后點擊“Next”按鈕,進(jìn)入組件選擇界面,如圖8-41所示。圖8-41組件選擇界面
(7)在組件選擇界面,根據(jù)需要進(jìn)行設(shè)置,若是初學(xué)者建議使用默認(rèn)設(shè)置,然后點擊“Next”按鈕進(jìn)入程序安裝預(yù)覽界面,如圖8-42所示。圖8-42程序安裝預(yù)覽界面
(8)在程序安裝預(yù)覽界面直接點擊“Next”按鈕進(jìn)入程序安裝拷貝界面,如圖8-43所示。圖8-43程序安裝拷貝界面
(9)在程序安裝拷貝界面,等待片刻即可完成安裝,出現(xiàn)如圖8-44所示的安裝完成提示界面。圖8-44安裝完成提示界面
(10)在安裝完成提示界面上,點擊“Finish”按鈕,完成安裝。然后啟動TestComplete,其主界面如圖8-45所示。圖8-45TestComplete主界面
2.TestComplete的基本使用方法
TestComplete的使用方法與其他自動化功能測試工具的使用方法類似,包括以下步驟:
創(chuàng)建測試項目;
錄制測試腳本;
編輯測試腳本;
運行測試腳本。
現(xiàn)以對Notepad的測試為例進(jìn)行說明。
1)創(chuàng)建測試項目
在TestComplete主界面上選擇File菜單,點擊“New”,新建一個項目,出現(xiàn)如圖8-46所示界面。圖8-46創(chuàng)建項目界面在創(chuàng)建項目界面上,選擇“General-PurposeTestProject”類型的項目,在“Projectname”中輸入項目名稱,再在“Language”中選擇腳本語言(在這里選擇“DelphiScript”),然后點擊“OK”按鈕,出現(xiàn)如圖8-47所示界面。圖8-47項目向?qū)Ы缑嬖陧椖肯驅(qū)Ы缑嫣峁└鞣N項目屬性的設(shè)置,可直接點擊“Finish”按鈕,接受所有默認(rèn)的設(shè)置,則出現(xiàn)如圖8-48所示的界面。圖8-48項目工作空間1界面在項目工作空間1左邊的ProjectExplorer界面中選中并雙擊“TestedApps”項后,可切換到如圖8-49所示界面。圖8-49項目工作空間2界面在項目工作空間2界面上,可以通過右鍵選擇“NewItem”來添加一個被測試對象。在這里,選擇“C:\Windows”目錄下的NotePad.EXE。這時在“TestedApps”下就多了一個名為Notepad的對象。右鍵選擇“Run”,則可啟動記事本程序。
2)錄制測試腳本
接上面步驟,用右鍵選擇“Run”,則可啟動記事本程序。啟動被測試程序后,可錄制基本的測試腳本。通過選擇“Script”下面的“Record”子菜單,可使TestComplete處于錄制狀態(tài),會把界面上的所有GUI操作都記錄下來,并開始按照預(yù)設(shè)的測試用例步驟來操作被測試對象。例如,在記事本輸入?yún)^(qū)輸入“123”,然后停止錄制,則會在腳本中添加如下
代碼:
procedureTest1;
begin
Sys.Process('NOTEPAD').Window('Notepad','*').Window('Edit').Keys('123');
end;
3)編輯測試腳本
上面僅僅錄制了一個很簡單的操作,這樣簡單的腳本對于自動化測試而言是不夠的,需要增強(qiáng)腳本,加入驗證點。對于上面的簡單操作,可以加入對輸入字符串后的記事本的某些屬性進(jìn)行驗證。例如,可以在輸入字符串后,驗證記事本輸入?yún)^(qū)域的文本對象是否改變,是否包含了輸入的字符串。
在加入驗證點之前,先看一下有哪些被測對象的屬性是可以被用于校驗的。TestComplete提供了一個強(qiáng)大的對象查看工具“ObjectBrowser”,如圖8-50所示。圖8-50ObjectBrowser界面在這個界面的左邊是“Objects”區(qū)域,該區(qū)域用樹狀層次結(jié)構(gòu)展示了系統(tǒng)內(nèi)存中的所有進(jìn)程對象以及它們的下級對象,包括窗體、空間等。在界面的右邊則是對象對應(yīng)的屬性和可調(diào)用的方法等。找到記事本對象的“Edit”空間,可以看到它的“wText”屬性用來存儲文本內(nèi)容,因此可以利用這個對象屬性來驗證輸入?yún)^(qū)域是否包含了剛才輸入的內(nèi)容,從而判斷測試是否通過。把“Test1”的代碼修改成如下代碼:
procedureTest1;
begin
Sys.Process('NOTEPAD').Window('Notepad','*').Window('Edit').Keys('123');
ifSys.Process('Notepad.EXE').Window('Notepad','無標(biāo)題-記事本',
1).Window('Edit','',1).wText='123'
then
begin
log.Message('OK!')
end
else
log.Error('輸入錯誤!')
end;
4)運行測試腳本
在“test1”的代碼中用右鍵選擇“RunCurrentRoutine”就可以運行剛才錄制的腳本。運行過程無誤后,出現(xiàn)如圖8-51所示界面。圖8-51運行結(jié)果界面這個界面顯示的是腳本運行的結(jié)果。如果運行有誤,則會在“TestLog”窗口中列出錯誤信息。雙擊錯誤信息可以定位到錯誤發(fā)生的代碼行。8.4.4自動化測試常見的誤區(qū)
1.自動化測試工具是萬能的
很多人一聽到自動化測試,就認(rèn)為自動化測試工具可以完成一切測試工作,從測試計劃到測試執(zhí)行再到測試結(jié)果分析,都不需要任何人工干預(yù)。顯然,這是一種理想狀態(tài),現(xiàn)實中還沒有哪個測試工具有這個能力,并且將來也不會有。在現(xiàn)實中有關(guān)的測試設(shè)計、測試案例以及一些關(guān)鍵的測試任務(wù)還是需要人工參與的。也就是說,自動化測試是對手工測試的輔助和補(bǔ)充,它永遠(yuǎn)也不可能完全取代手工測試。
2.測試工具可適用于所有的測試
每種自動化測試工具都有它的應(yīng)用范圍和可用對象,所以不能認(rèn)為一種自動化測試工具能夠滿足所有測試的需求。針對不同的測試目的和測試對象,應(yīng)該選擇合適的測試工具進(jìn)行測試。在很多情況下,需要利用多種測試工具或者開發(fā)自動化測試框架才能達(dá)到自動化測試的目的。商業(yè)和開源的測試工具能夠用來進(jìn)行自動化測試,但是需要根據(jù)自身產(chǎn)品的特點開發(fā)自動化測試框架,在框架中提供常用的測試用例,以加快測試速度,達(dá)到測試用例復(fù)用,這是今后測試自動化發(fā)展的道路。
3.測試工具能使工作量大幅度減少
事實上,引入自動化測試工具不會馬上減少測試工作,相反,在更多情況下,首次將自動化測試工具引入企業(yè)時,測試工作實際上變得更艱巨了。只有在正確合理地使用測試工具并有一定的技術(shù)積累之后,測試工作量才能逐漸減輕。
4.測試工具能實現(xiàn)100%的測試覆蓋率
自動化測試可以增加測試覆蓋的深度和廣度,利用白盒測試工具可能實現(xiàn)語句全覆蓋、邏輯路徑全覆蓋等,但因為窮舉測試必須使用所有可能的數(shù)據(jù),包括有效的和無效的測試數(shù)據(jù),所以在有限的資源下也不可能進(jìn)行100%
的測試。
5.自動化測試工具容易使用
對于這一點,很多測試工程師有同樣的錯誤觀點,認(rèn)為測試工具可以簡單地通過捕獲(錄制)客戶端操作生成腳本,且腳本不加編輯就可用于回放使用。事實上,自動化測試不是那么簡單的,捕獲的操作是否正確,以及腳本編輯是否合理都會影響測試結(jié)果。因此,自動化測試需要更多的技能,也需要更多的培訓(xùn)。
6.自動化測試能發(fā)現(xiàn)大量新缺陷
發(fā)現(xiàn)更多的新缺陷應(yīng)該是手工測試的主要目的,不能期望自動化測試去發(fā)現(xiàn)更多新缺陷。事實上,自動化測試主要用于發(fā)現(xiàn)原來的缺陷。自動化測試用于回歸測試,而大量的新業(yè)務(wù)測試更多地還是依賴手工測試。8.4.5如何正確地理解自動化測試
談到自動化測試,一般就會提到測試工具。許多人覺得使用了一兩個測試工具就是實現(xiàn)了測試自動化,這種理解是不對的,至少是片面的。的確,測試工具的使用是自動化測試的一部分工作,但“用測試工具進(jìn)行測試”不等于“自動化測試”。
自動化測試的真正含義可以理解為“一切可以由計算機(jī)系統(tǒng)自動完成的測試任務(wù)都已經(jīng)由計算機(jī)系統(tǒng)或軟件工具、程序來承擔(dān)并自動執(zhí)行”。它包含了下列三層含義:
(1)“一切”不僅僅指測試執(zhí)行的工作——對被測試的對象進(jìn)行驗證,還包括測試的其他工作,如缺陷管理、測試管理、環(huán)境安裝、設(shè)置和維護(hù)等。
(2)“可以”意味著某些工作無法由系統(tǒng)自
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 如何上好一節(jié)公開課培訓(xùn)
- 2024版技術(shù)開發(fā)與轉(zhuǎn)讓合同帶眉腳
- 《烽火通信中天科技》課件
- 2024版辦公室裝修拆除施工協(xié)議一
- 2024年滬科版九年級化學(xué)上冊月考試卷
- 2024年粵人版九年級數(shù)學(xué)上冊月考試卷
- 今天天氣怎么樣(說課稿)-2023-2024學(xué)年蘇教版(2017)-科學(xué)二年級上冊
- 原發(fā)性高血壓與心理護(hù)理
- 2024版醫(yī)療設(shè)備采購與技術(shù)支持協(xié)議
- 汕尾廠區(qū)綠化景觀施工方案
- 《白描花卉妙筆生》 課件 2024-2025學(xué)年嶺南美版(2024) 初中美術(shù)七年級上冊
- 中國偏頭痛診治指南(第一版)2023解讀
- 2025年公務(wù)員考試申論試題與參考答案
- 2024年秋季新人教PEP版三年級上冊英語全冊教案
- 商場反恐防暴應(yīng)急預(yù)案演練方案
- 成華區(qū)九年級上學(xué)期語文期末試卷
- 智慧物業(yè)管理的區(qū)塊鏈技術(shù)應(yīng)用
- 2024年中考英語語法感嘆句100題精練
- 《海洋與人類》導(dǎo)學(xué)案
- 公安管理學(xué)試題(含答案)
- 挑戰(zhàn)杯紅色賽道計劃書
評論
0/150
提交評論