




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)中國建設(shè)銀行功能自動化測試實施方案建議書(討論稿)中國建設(shè)銀行信息技術(shù)管理部2006 年 12 月精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)目目 錄錄精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)1 1前言前言1.11.1 文檔目的文檔目的功能自動化測試方案是為中國建設(shè)銀行北京開發(fā)中心功能測試使用自動化工具,實現(xiàn)以自動化測試為主的目標而編寫的技術(shù)和實施方案。文檔的主要目的是提供自動化測試的技術(shù)方案、實施內(nèi)容、實施步驟,以及關(guān)鍵的技術(shù)實現(xiàn)手段等。本文的預(yù)期讀者為建行測試中心相關(guān)人員。1.21.2 名詞術(shù)語名詞術(shù)語QT
2、P:Mercury 公司的功能自動測試工具,是一種企業(yè)級的用于檢驗應(yīng)用程序是否如期運行的功能性測試工具。通過自動捕獲,檢測,和重復(fù)用戶交互的操作, QTP 能夠辨認缺陷并且確保那些跨越多個應(yīng)用程序和數(shù)據(jù)庫的業(yè)務(wù)流程在初次發(fā)布就能避免出現(xiàn)故障,并且保持長期可靠運行。MQC:Mercury 公司的測試管理工具,用于在廣泛的 IT 系統(tǒng)和應(yīng)用環(huán)境下執(zhí)行質(zhì)量保證。它包含一套基于角色的集成應(yīng)用程序和最佳實踐,以及開放式、可伸縮、可擴展的基礎(chǔ)架構(gòu)。Quality Center 設(shè)計用于對關(guān)鍵質(zhì)量活動進行優(yōu)化和自動化,包括要求、測試和故障管理、功能測試以及業(yè)務(wù)流程測試。功能測試:功能測試又稱正確性測試,它檢
3、查軟件的功能是否符合規(guī)格說明。由于正確性是軟件最重要的質(zhì)量因素,所以其測試也最重要。自動化測試:使用商業(yè)提供的自動化測試工具或者自己開發(fā)的工具對目標系統(tǒng)進行測試。機器自動執(zhí)行的測試,替代人完成重復(fù)性勞動,但不能完全取代人。自動化測試需要用到測試工具,測試工程師的參與,自動化測試技術(shù)可應(yīng)用于所有的測試階段業(yè)務(wù)組件:表示應(yīng)用程序中單任務(wù)的步驟集合。業(yè)務(wù)組件(也稱為組件)在Mercury Quality Center 中由業(yè)務(wù)流程測試組合為特定的場景以建立業(yè)務(wù)流程測試。Action:在 QTP 中 Action 是一個可以被重復(fù)使用的最小單位,當建立一個全新的測試腳本時,測試腳本中只有一個 Acti
4、on 名為 Action1,可以將整個測試腳本切割成多個 Actions,讓測試腳本更為模塊化且更容易被重復(fù)使用。CheckPoint 檢查點:用來驗證腳本執(zhí)行結(jié)果是否達到預(yù)期??梢栽阡浿频倪^程中建立檢查點,也可以在錄制完成之后再建立檢查點。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)測試對象模型:是一大組對象類型或類, QTP 用這些對象類型或類來表示應(yīng)用程序中的對象。每個測試對象類都有一個可以唯一標識屬于該類的對象的屬性列表,以及一組 QTP 可以對其進行錄制的方法。測試對象:是 QTP 在測試或組件中創(chuàng)建的用于表示應(yīng)用程序中的實際對象的對象。QTP 存儲有關(guān)該對象的信息,這些信息有助于它在
5、運行會話期間標識和檢查該對象。運行時對象:是網(wǎng)站或應(yīng)用程序中的實際對象,在運行會話期間執(zhí)行針對該對象的方法。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)2 2功能自動化測試實施原則功能自動化測試實施原則2.12.1 實施原則實施原則功能自動化測試過程中工具不可能完成所有的工作,工具仍然是測試過程中的輔助手段。對于工具主要是解決測試過程中的重復(fù)性的工作任務(wù)。另外實施自動化的測試,對被測系統(tǒng)也有更高的要求,總結(jié)功能自動化測試的實施原則如下:1)使用自動化工具測試,要求被測系統(tǒng)開發(fā)比較穩(wěn)定,較少發(fā)生功能的變更;2)在自動化測試腳本錄制前,被測系統(tǒng)的界面相對穩(wěn)定;3)功能測試自動化要求測試數(shù)據(jù)環(huán)境中的測
6、試數(shù)據(jù)相對充裕,滿足多次重復(fù)回歸測試的要求;4)要求被測系統(tǒng)的版本運行比較穩(wěn)定,較少發(fā)生測試中止的情況;5)分期分步驟實施,優(yōu)先選擇產(chǎn)品功能比較穩(wěn)定的系統(tǒng)進行;6)完善的、可復(fù)用的數(shù)據(jù)參數(shù)、腳本庫是一個長期的積累過程。2.22.2 實施功能自動化測試的優(yōu)缺點實施功能自動化測試的優(yōu)缺點功能的自動化測試與手工測試雖然有很多局限,但是同樣有其優(yōu)勢,隨著自動化測試技術(shù)和工具的發(fā)展,對于比較穩(wěn)定的產(chǎn)品的功能測試中,自動化測試占有越來越重要的地位。使用 QTP 可以加快整個測試的過程,在產(chǎn)品的版本發(fā)布之后,可以重復(fù)使用測試腳本進行測試,具體來說:自動化測試的優(yōu)點:提高測試效率,降低測試成本;重復(fù)性強的手工
7、勞動獨立用自動化實現(xiàn);快速的回歸測試,提高新版本發(fā)布的速度和質(zhì)量;避免人工測試容易犯的錯誤,如:錯誤測試,漏測試,多測試等;很容易就實現(xiàn)并發(fā)性測試;測試可重用,采用腳本和數(shù)據(jù)可以很容易實現(xiàn)重用。自動化測試的缺點:規(guī)范的測試管理,測試需求,測試用例;不能創(chuàng)造性發(fā)現(xiàn)測試腳本沒有設(shè)計的缺陷;高質(zhì)量的測試用例;高素質(zhì)的自動化測試工程師;精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)對測試環(huán)境要求比較嚴格;測試需求變化可能引起大量的測試用例,自動測試腳本的修改、維護。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)3 3實施范圍和目標實施范圍和目標3.13.1 實施范圍實施范圍1)工具范圍:目前考慮 QTP、MQ
8、C、TAR、配置管理工具、Excel 等工具的使用和集成;持續(xù)集成工具暫時先不考慮;2)系統(tǒng)范圍:定位在建行測試中心基礎(chǔ)測試環(huán)境中的交易類系統(tǒng);3)測試階段的范圍:局限在 SIT 后期、以及上線后的功能回歸測試,目前暫不包括LT、內(nèi)部測試中的功能測試部分。3.23.2 實施目標實施目標1.功能自動化測試系統(tǒng)應(yīng)該能完成 SIT、以及上線后功能的回歸測試;2.方案目標對有界面和無界面的交易測試都能完成,有界面的交易支持如下方式:a)支持字符終端界面;b)支持 B/S 的 Web 界面;c)支持 C/S 的 Windows 應(yīng)用程序界面;3.功能自動化測試方案對目前建行存在的大部分應(yīng)用系統(tǒng)都可以進行
9、測試;4.實現(xiàn)自動化腳本錄制、自動化腳本執(zhí)行、自動化缺陷報告和管理。3.33.3 總體實施策略總體實施策略1.首先從目前建行的系統(tǒng)中選擇適合自動化測試的項目和系統(tǒng);2.其次確定實施功能自動化測試的階段和時機;3.第三從適合的項目中選擇適合自動化測試實施的功能和交易。具體實施策略參見第 6 節(jié)的實施管理建議。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)4 4技術(shù)方案實施內(nèi)容技術(shù)方案實施內(nèi)容4.14.1 使用使用 QTPQTP 測試的階段測試的階段使用 QTP 測試包括三個主要階段:4.1.14.1.1 創(chuàng)建測試或組件創(chuàng)建測試或組件創(chuàng)建階段可以通過在應(yīng)用程序或網(wǎng)站上錄制會話,或者建立對象庫并使用關(guān)鍵
10、字驅(qū)動功能向關(guān)鍵字視圖中手動添加步驟來創(chuàng)建測試或組件。然后,可以使用特殊的測試選項和/或編程語句來修改這些測試或組件。4.1.24.1.2 運行測試或組件運行測試或組件創(chuàng)建測試或組件后,測試工程師可以運行這些測試或組件。運行測試或組件檢查被測系統(tǒng)。運行測試或者組件對錄制和編寫的腳本進行調(diào)試。4.1.34.1.3 分析結(jié)果分析結(jié)果運行測試或組件之后,就可以查看測試執(zhí)行的結(jié)果。在“結(jié)果”窗口中查看結(jié)果。報告在運行會話過程中檢測到的缺陷。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)4.24.2 使用使用 QTPQTP 測試的具體步驟測試的具體步驟錄制/編寫腳本定義參數(shù)增加邏輯控制運行測試集腳本調(diào)試生成
11、報告加入檢查點測試分析準備加強腳本4.2.14.2.1 測試分析準備測試分析準備在測試前需要先確認被測應(yīng)用程序是否符合自動化測試的需要,是否滿足自動化測試工具的要求。確認測試的范圍和測試目標,比如要測試哪些功能、以及測試的時機等。在準備階段要根據(jù)被測系統(tǒng)的業(yè)務(wù)需要分析被測系統(tǒng)的功能,整理出測試需求和測試數(shù)據(jù)需求。熟悉被測系統(tǒng)為后期指定測試集做準備。配置 QTP 工具的設(shè)置,為腳本錄制做準備。4.2.24.2.2 錄制測試腳本錄制測試腳本啟動 QTP 工具的錄制功能,手工操作被測系統(tǒng)的應(yīng)用程序,QTP 將自動錄制人工的操作過程,并將操作的步驟顯示在 QTP 工具中。對于工具不能錄制或者不能識別的
12、界面對象需要手工識別和添加。4.2.34.2.3 加強測試腳本加強測試腳本在測試腳本中加入檢查點,檢查點可以是標準檢查點、對象檢查點、文本檢查點、數(shù)據(jù)庫檢查點等,以驗證應(yīng)用程序的功能是否正確;精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)將錄制的腳本中的固定值(Hard Code)以參數(shù)取代,使得測試腳本跟測試數(shù)據(jù)結(jié)合;使用邏輯或者條件判斷,增加腳本的邏輯以實現(xiàn)對復(fù)雜的功能的測試。4.2.44.2.4 調(diào)試腳本調(diào)試腳本對修改增強完成的腳本進行調(diào)試,修改腳本中的邏輯錯誤,確保測試腳本能夠正常順利執(zhí)行。對于由于被測系統(tǒng)的功能需求發(fā)生變化后,測試腳本需要維護和修改,然后重新進行調(diào)試,以保證測試腳本的有效
13、性。4.2.54.2.5 執(zhí)行測試腳本執(zhí)行測試腳本調(diào)試完成的測試腳本,將在被測系統(tǒng)的版本上執(zhí)行測試,檢查被測系統(tǒng)的功能是否滿足需求。執(zhí)行腳本一般將腳本導(dǎo)入 MQC 中管理和定義測試案例執(zhí)行集,由 MQC 來調(diào)度執(zhí)行測試腳本。4.2.64.2.6 分析測試結(jié)果分析測試結(jié)果分析測試執(zhí)行的結(jié)果,找出問題所在。如果是剛開始實施自動化測試,分析結(jié)果還可以幫助分析和定位測試腳本的正確性。以便提高測試腳本的可靠性。4.2.74.2.7 匯報測試缺陷匯報測試缺陷通常 QTP 工具與 MQC 工具結(jié)合使用,這樣 QTP 發(fā)現(xiàn)的缺陷可以自動提交到 MQC 中對缺陷進行管理和跟蹤。4.34.3 準入檢查準入檢查準入
14、檢查機制是測試管理中的重要的環(huán)節(jié),同時對于實現(xiàn)自動化測試方案中,更是一個重要的機制。準入檢查對被測系統(tǒng)的版本、系統(tǒng)功能開發(fā)的穩(wěn)定性等都能夠有效驗證,保證了自動化測試的順利執(zhí)行,同時也減少了自動化測試腳本的維護工作量。準入檢查的內(nèi)容和方式:被測版本靜態(tài)檢查:通過靜態(tài)檢查被測版本的版本發(fā)布單 、版本的文件、版本的部署安裝是否正確。被測系統(tǒng)版本驗證:通過 MQC 運行覆蓋主要業(yè)務(wù)功能的腳本案例執(zhí)行的成功率精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)判斷被測系統(tǒng)能否進入自動化測試。4.44.4 測試數(shù)據(jù)環(huán)境與腳本管理測試數(shù)據(jù)環(huán)境與腳本管理QTP 可以將測試數(shù)據(jù)參數(shù)化,數(shù)據(jù)參數(shù)與測試腳本相對應(yīng),在測試腳本
15、中可以調(diào)用這些數(shù)據(jù)參數(shù),實現(xiàn)同一個腳本可以針對不同的數(shù)據(jù)執(zhí)行多遍??梢愿鶕?jù)參數(shù)的設(shè)置實現(xiàn)測試業(yè)務(wù)流程的多個分支。測試數(shù)據(jù)的參數(shù)化有四種基本方法:1)使用 QTP 的 DataTable,直接在 QTP 中將測試數(shù)據(jù)錄入?yún)?shù)表中;2)使用 QTP 的正則表達式,根據(jù)測試數(shù)據(jù)的需求,使用正則表達式可以簡化DataTable 中的重復(fù)、序列以及匹配數(shù)據(jù);3)使用外部文件:通過 Excel 導(dǎo)入 QTP 中,或者腳本直接訪問外部文件的方式得到數(shù)據(jù),可以方便實現(xiàn)腳本之間的數(shù)據(jù)共享;4)使用外部關(guān)系數(shù)據(jù)庫,QTP 腳本可以直接訪問其他的數(shù)據(jù)庫,從數(shù)據(jù)庫中取測試數(shù)據(jù)。測試數(shù)據(jù)與腳本的關(guān)系:測試數(shù)據(jù)與腳本的關(guān)
16、系:把自動測試腳本運行所用到的數(shù)據(jù)以參數(shù)取代,腳本運行時從參數(shù)表取數(shù)據(jù);將數(shù)據(jù)與腳本分離,便于對數(shù)據(jù)和腳本的維護管理,便于更新數(shù)據(jù)以適應(yīng)新的測試;QTP 腳本中的取值參數(shù)化,增強腳本的復(fù)用程度;環(huán)境變量參數(shù)化,測試、操作參數(shù)的值,應(yīng)用程序隨機值。測試腳本參數(shù)化的實現(xiàn)步驟:測試腳本參數(shù)化的實現(xiàn)步驟:1)定義數(shù)據(jù)表參數(shù);2)在數(shù)據(jù)表中建立數(shù)據(jù)參數(shù)值;3)修改受參數(shù)化影響的測試步驟的腳本;4)運行腳本,調(diào)試建立的參數(shù)和修改的腳本。4.54.5 功能自動化測試復(fù)用規(guī)范功能自動化測試復(fù)用規(guī)范使用自動化測試工具進行系統(tǒng)功能的自動化測試的一個重要的目的之一就是減少成本,提高效率。因此對測試過程中的成果的復(fù)用
17、就是一個重要的需要考慮的內(nèi)容,幸運的是,目前的很多自動化測試工具都提供了類似復(fù)用的功能。針對 QTP 來說,工具本身提供了對腳本 Action 的復(fù)用、檢查點的復(fù)用、參數(shù)數(shù)據(jù)的復(fù)用以及腳本模板的定制功能。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)Action 的復(fù)用:的復(fù)用:對于需要重復(fù)執(zhí)行的步驟、一些常用的操作,以及一些通用性的操作,比如登錄、退出等。一般都錄制為單獨的 Action,存為單獨的腳本文件。在需要的地方調(diào)用該Action?;蛘邔τ谝呀?jīng)錄制好的腳本,可以使用腳本分拆功能將復(fù)用的腳本分拆出來。Action 的復(fù)用是先錄制用于復(fù)用的 Action 腳本,然后對該腳本設(shè)置為 Reuse
18、able Action,這樣該 Action 可以為其他腳本調(diào)用。QTP 對 Action 的調(diào)用方式為:復(fù)制 Action 和調(diào)用已有的 Action 兩種方式,可以根據(jù)實際情況選擇。腳本的復(fù)用可以減少腳本庫中腳本的數(shù)量,增強案例庫的可維護性。參數(shù)數(shù)據(jù)的復(fù)用:參數(shù)數(shù)據(jù)的復(fù)用:QTP 的參數(shù)化主要有兩種方式,一是 Global:控制整個 Action 的運行次數(shù);另一種是 Current Action 的方式,對于一個腳本中有多個 Action 的情況下,用于控制單一的 Action 的循環(huán)次數(shù)。對于參數(shù)數(shù)據(jù)是執(zhí)行自動化測試的前提,參數(shù)數(shù)據(jù)一般是可以在不同的系統(tǒng)版本的測試或者回歸測試中復(fù)用率比
19、較高。檢查點的復(fù)用:檢查點的復(fù)用:每個腳本都需要設(shè)定檢查點,但有些腳本的檢查點可能相同,這時重復(fù)設(shè)定檢查點就會使工作沒有實際意義,這時可以設(shè)立可重用檢查點來解決這個問題。具體設(shè)置步驟為:1)錄制腳本,不設(shè)立檢查點;2)錄制可重用檢查點,將 QTP 錄制和運行設(shè)置設(shè)為錄制當前頁,開始錄制,不錄制步驟,直接在錄制過程中添加檢查點,將這個只有檢查點的 Action 設(shè)為可重用 Action(Reusable Action) ; 3)調(diào)用可重用檢查點,在第一步錄制好的腳本中調(diào)用這個可重用檢查點,首先選中需要添加檢查點的步驟,然后選擇調(diào)用已有的 Action。Action 模板定制:模板定制:對于需要在
20、每個 Action 腳本中包含的信息,比如腳本文件的頭注釋信息等,可以應(yīng)用 Action 模板的方式來規(guī)范腳本開發(fā)的規(guī)范化,也為腳本維護和修改提供了方便。具體操作步驟為:精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)1)新建一個文本,輸入一些新建 Action 時經(jīng)常包含的信息,然后保存為ActionTemplate.MST 文件;2)復(fù)制該文件到 QTP/dat 目錄下。這樣每次新建 action 都會包含固定的信息。4.64.6 環(huán)境部署環(huán)境部署功能自動化測試環(huán)境包括:自動化工具、缺陷管理工具、測試案例管理工具、持續(xù)集成工具的協(xié)同環(huán)境。在該方案中建議的自動化測試工具及其主要功能有:工具名稱工具
21、名稱功能說明功能說明QTP測試腳本錄制、修改、調(diào)試、運行;腳本的檢查點、參數(shù)設(shè)置等。MQC測試腳本的管理、測試集的建立;業(yè)務(wù)測試流程的執(zhí)行建立;測試執(zhí)行、缺陷報告管理、測試分析報告生成。TARTAR 主要是結(jié)合 QTP 和 QC 工作,用于字符終端的功能測試;它是連接 QTP 和字符終端的測試引擎,為 QTP 提供“虛擬設(shè)備” ,方便自動輸入。測試數(shù)據(jù)庫為功能自動化測試提供可以復(fù)用的測試數(shù)據(jù);還可以將測試過程中可以用于復(fù)用的數(shù)據(jù)導(dǎo)入測試數(shù)據(jù)庫中管理維護。測試案例庫可以提供一些可以復(fù)用的測試案例腳本;還可以對測試過程中可以抽象為公用的腳本統(tǒng)一管理和維護。配置管理庫管理測試過程中的腳本的版本、數(shù)據(jù)
22、的版本等。Excel可以用于準備測試數(shù)據(jù),可以從 Excel 導(dǎo)入 QTP 的 DataTable 中,也可以在 QTP 腳本中直接訪問 Excel 中的數(shù)據(jù)。QT Addin for MQCQTP 與 MQC 之間的插件,需要單獨安裝精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)TAR字字符符終終端端錄錄制制工工具具QTP1、錄制/調(diào)試訪問被被測測系系統(tǒng)統(tǒng)MQC Server連接MQC Client測試工程師4、定義測試集5、執(zhí)行腳本6、查看結(jié)果配置管理庫測試數(shù)據(jù)庫測試案例庫將測試腳本簽入簽出2、從公共測試數(shù)據(jù)庫提取測試需要的數(shù)據(jù)將可復(fù)用的測試腳本存入腳本管理定義測試集運行測試集查看執(zhí)行結(jié)果報告
23、缺陷模擬測試數(shù)據(jù)Excel2、導(dǎo)入自動化測試工程師腳本錄制腳本編寫腳本調(diào)試訪問錄制3、發(fā)布導(dǎo)入腳本4.74.7 組織管理要求組織管理要求在自動化測試實施過程中,需要相關(guān)的角色和人員,不同的角色負責(zé)相應(yīng)的職責(zé),具體需要的人員角色如下:測試經(jīng)理:制定測試計劃;協(xié)調(diào)各個小組工作、協(xié)調(diào)行方資源;跟蹤測試進度;協(xié)商解決測試中的遇到的問題。業(yè)務(wù)測試工程師:為自動化測試提供業(yè)務(wù)指導(dǎo),數(shù)據(jù)準備。測試分析工程師:搭建測試環(huán)境,數(shù)據(jù)準備;定義腳本的框架,調(diào)試腳本框架;分析測試結(jié)果,優(yōu)化測試腳本,配合系統(tǒng)優(yōu)化。測試腳本開發(fā)工程師:根據(jù)框架生成測試腳本,數(shù)據(jù)參數(shù)化,添加檢查點,執(zhí)行測試,記錄測試結(jié)果。精選優(yōu)質(zhì)文檔-傾
24、情為你奉上專心-專注-專業(yè)開發(fā)人員:系統(tǒng)優(yōu)化,測試過程中問題定位。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)5 5功能自動化測試方法比較功能自動化測試方法比較自動化測試技術(shù)的發(fā)展經(jīng)歷了簡單的錄制回放、腳本測試和數(shù)據(jù)測試的階段,同時也代表了自動化測試技術(shù)方法。下面對比這三種自動化測試的技術(shù)方法,比較其優(yōu)缺點。5.15.1 錄制回放技術(shù)錄制回放技術(shù)建行測試過程分為測試計劃、測試需求分析、測試設(shè)計和案例編寫、測試執(zhí)行、測試分析等幾個階段,測試執(zhí)行和測試問題報告是屬于機械的、多次重復(fù)的活動,大概要占測試總工作量的 80左右,最適合被自動化,也是首先應(yīng)該被自動化的。測試案例編寫活動也有部分工作可以被自動
25、化,如自動產(chǎn)生腳本框架等。測試執(zhí)行活動又分為輸入數(shù)據(jù)、執(zhí)行測試、驗證測試數(shù)據(jù)三個部分,其中工作量最大、實現(xiàn)起來最容易的就是輸入數(shù)據(jù)和執(zhí)行測試過程的自動化,最初采取的方法就是由計算機記錄手工操作的過程和數(shù)據(jù),再次執(zhí)行測試時,根據(jù)上次記錄內(nèi)容回放即可,就不需要手工輸入了,這就是錄制/回放技術(shù),后來,為了實現(xiàn)驗證測試數(shù)據(jù)的自動化,在錄制過程后,進行了增強工作,可在腳本中加入同步、檢查點,并對部分數(shù)據(jù)進行參數(shù)化,實現(xiàn)初步的數(shù)據(jù)驅(qū)動。 DataDataDataCodeCodeRecordEnhanceReplay使用這種技術(shù),其優(yōu)點如下:1.使用簡單,不需要深入的工作或計劃,可很快啟動手工錄制工作,可以
26、快速開始自動化,在短時間開發(fā)出大量簡單的測試,啟動成本低2.使用者不需要了解編程技術(shù)(假設(shè)不需要修改腳本)3.對實際執(zhí)行的操作可以跟蹤審計精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)但是,絕大部分采用這種技術(shù)進行自動化回歸測試的組織都失敗了,失敗的一個共性的原因是因為這種技術(shù)雖然初期啟動成本低,但是隨著測試過程的進行,后期維護成本非常高,使得不可能使用這種技術(shù)構(gòu)建長期的自動測試系統(tǒng),具體來說,這種技術(shù)存在以下問題:1.產(chǎn)生自動測試的過程繁瑣,效率低:產(chǎn)生可行的自動測試的時間比手工測試長 210 倍2.一切依賴于錄制過程中捕獲的內(nèi)容,故只能測試已經(jīng)能夠正常執(zhí)行的功能3.存在錄制噪聲,產(chǎn)生的腳本是非
27、結(jié)構(gòu)化的,維護工作量巨大4.腳本、數(shù)據(jù)和驗證條件是捆綁在一起的,任何一個修改,就必須重新錄制或者修改腳本5.易受軟件改變的影響,軟件改變后必須重新錄制腳本和驗證條件6.如果回放時發(fā)生了錄制腳本時沒有發(fā)生的事情,將引起整個測試失敗正因為以上原因,錄制增強回放技術(shù)只使用于少量特殊情況,如培訓(xùn)演示、只使用一次的測試腳本,界面和操作不變的測試等,對于長期、大量的自動回歸測試來說,這種方法是不可行的。5.25.2 腳本技術(shù)腳本技術(shù)既然錄制回放技術(shù)維護工作量巨大,無法使用這種技術(shù)構(gòu)建長期的、大量測試的測試系統(tǒng),那么如何改進自動回歸測試系統(tǒng)的可維護性呢?人們發(fā)現(xiàn),自動回歸測試系統(tǒng)本身也是一個軟件系統(tǒng),其基本
28、工作元素就是測試腳本,測試腳本也是一種軟件程序代碼,也存在各種程序錯誤,改進自動回歸測試系統(tǒng)的可維護性,就是要改善自動測試腳本的可維護性,既然自動回歸測試腳本是軟件程序,那么就可以使用軟件開發(fā)的技術(shù)來改進自動回歸測試腳本的可維護性,這就是結(jié)構(gòu)化的編程方法(當時還沒有出現(xiàn)面向?qū)ο蟮募夹g(shù)) 。這種結(jié)構(gòu)化的腳本技術(shù)又叫功能分解技術(shù),是一種基于任務(wù)的技術(shù),其工作原理是根據(jù)被測系統(tǒng)需要完成的任務(wù)和功能,對這些功能和任務(wù)進行分解,采用結(jié)構(gòu)化編程技術(shù)完成實現(xiàn)這些功能的腳本,不同測試中執(zhí)行重復(fù)的任務(wù)時,使用同一個腳本,當重復(fù)任務(wù)發(fā)生改變時,也只需要修改一個腳本,對該腳本來說,數(shù)據(jù)與腳本是分離的,可以把數(shù)據(jù)作為
29、腳本的參數(shù),也可以把需要的輸入數(shù)據(jù)和驗證數(shù)據(jù)放到指定的文件中,由腳本讀取。這種技術(shù)的特點是發(fā)展了“結(jié)構(gòu)良好的、有文檔的、健壯的、可維護的”測試能力,測試項目成為工程項目,其關(guān)鍵特征是部分測試腳本已經(jīng)開始具有可復(fù)用性。另外,由于測精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)試腳本包括錯誤捕獲和恢復(fù)邏輯,比錄制回放技術(shù)具有更高的可靠性,可以預(yù)知可能發(fā)生的錯誤和意外事件,通過編程進行處理,使自動回歸測試能順利進行。總結(jié)起來,這種技術(shù)優(yōu)缺點如下:優(yōu)點:1.可維護性較強采用模塊化設(shè)計,如果業(yè)務(wù)功能改變,只需要改變 1、2 個腳本,維護開銷低于錄制回放技術(shù)復(fù)雜的測試用例可以通過在一個主腳本中調(diào)用業(yè)務(wù)功能腳本
30、實現(xiàn)對于需要重復(fù)執(zhí)行的測試任務(wù),只需要使用一個腳本,刪除了明顯的重復(fù),通過把不同的輸入/驗證數(shù)據(jù)作為參數(shù),或者放到文件中,使數(shù)據(jù)與腳本分開,腳本可以被不同用例使用2.可靠性不存在錄制噪聲,腳本經(jīng)過測試后,可靠性比較高意外事件(如彈出菜單、對話框等)可以預(yù)先考慮并通過編程解決這種技術(shù)雖然維護成本比錄制回放技術(shù)低,但是還存在一些問題,主要缺點如下:每個功能都需要一個特定的測試腳本,而且大量腳本需要手工編寫重復(fù)使用的腳本(共享腳本)通常只占被測軟件很小的一部分腳本數(shù)量增多,增加了更多的文檔,管理難度加大5.35.3 數(shù)據(jù)驅(qū)動技術(shù)數(shù)據(jù)驅(qū)動技術(shù)使用腳本技術(shù)后,還存在一些的問題,其一,由于腳本技術(shù)是一種基
31、于任務(wù)的技術(shù),與應(yīng)用系統(tǒng)的功能是緊密相關(guān)的,通常不同的應(yīng)用系統(tǒng)之間的差異比較大,如一個銀行的應(yīng)用系統(tǒng)和一個稅務(wù)的應(yīng)用系統(tǒng),他們之間可復(fù)用的腳本很少。二是由于采用這種技術(shù),大量腳本還是與數(shù)據(jù)捆綁在一起的,如果數(shù)據(jù)發(fā)生變化,也需要具有編程經(jīng)驗的人員修改腳本,并調(diào)試腳本,成本比較高。如何解決這些問題呢?很顯然,需要進一步提高共享腳本的數(shù)量。通過進一步思考,人們發(fā)現(xiàn)任何自動測試的終極目標都是自動完成一套與測試需求相對應(yīng)的有計劃的測試,可以由測試計劃驅(qū)動測試過程,測試工作的中心是測試數(shù)據(jù),而不是測試腳本,測試腳本只是為了傳遞測試數(shù)據(jù),應(yīng)把測試腳本和測試數(shù)據(jù)分開,由測試數(shù)據(jù)來驅(qū)動自動回歸測試過程,這就是所
32、謂的數(shù)據(jù)驅(qū)動測試或關(guān)鍵字驅(qū)動測試,也叫基于動作(Action)的測試或精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)Action Word 方法,與前面說到的數(shù)據(jù)驅(qū)動不同,這里說的數(shù)據(jù)驅(qū)動測試不只是簡單把外部數(shù)據(jù)輸入到 AUT(Application Under Test,被測系統(tǒng))中,數(shù)據(jù)驅(qū)動測試是一種數(shù)據(jù)被包含在輸入數(shù)據(jù)文件中,并且數(shù)據(jù)控制自動化測試腳本執(zhí)行的流程和動作的測試,只有這樣,才能實現(xiàn)在不同應(yīng)用間的復(fù)用。這種測試方法要求我們分開測試數(shù)據(jù)和測試腳本,測試腳本是可以復(fù)用的,因此也要求測試腳本是參數(shù)化的。具體來說,采用這種技術(shù)就是在測試數(shù)據(jù)中指定測試執(zhí)行的步驟,以及每個步驟執(zhí)行時操作的對象
33、、動作和數(shù)據(jù),測試腳本的作用就是讀入數(shù)據(jù),并根據(jù)數(shù)據(jù)的要求執(zhí)行相應(yīng)的動作,而面向?qū)ο蠹夹g(shù)的出現(xiàn),也促進了該技術(shù)的發(fā)展。另外,由于自動測試腳本本身也是一種軟件,也存在邏輯錯誤和其他各種缺陷,也需要維護,因此,在自動回歸測試過程中,除了要維護被測系統(tǒng)相關(guān)的代碼、數(shù)據(jù)、文檔外,還需要維護自動測試系統(tǒng)本身的腳本、數(shù)據(jù)和文檔,維護成本非常高,因此可以說,創(chuàng)建結(jié)構(gòu)化的、基于組件的測試腳本并使測試腳本與其執(zhí)行的數(shù)據(jù)相分離是自動化測試成功的唯一途徑。這種技術(shù)有多種實現(xiàn)方法,通常都會需要一個框架或引擎,用它來解析輸入數(shù)據(jù)中的動作指令,執(zhí)行指令要求的動作,而此框架和引擎的好壞,會直接影響自動回歸測試系統(tǒng)能否成功。
34、這種方法優(yōu)缺點分析如下:優(yōu)點:1.可維護性使用輸入文件的數(shù)據(jù)控制自動化測試的執(zhí)行流程和動作在特定框架下,可以非常容易地產(chǎn)生“健壯的”腳本,甚至自動產(chǎn)生數(shù)據(jù)與腳本分開,數(shù)據(jù)維護非常簡便,輸入數(shù)據(jù)文件格式簡單,維護方便,調(diào)整數(shù)據(jù)不需要修改腳本可以借助占位符(變量)允許動態(tài)數(shù)據(jù)輸入2.可靠性不存在錄制噪聲,基于框架的腳本開發(fā)更容易,更健壯意外事件(如彈出菜單、對話框等)可以預(yù)先考慮并通過編程解決3.可復(fù)用性:不是為一個應(yīng)用開發(fā)腳本,腳本是封裝的,可以在不同應(yīng)用間復(fù)用4.降低人員要求:只需要一個工具專家,業(yè)務(wù)人員不需要了解測試工具缺點:精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)需要手工維護大量的表格文
35、件或數(shù)據(jù)文件,并需要與測試用例、測試腳本保持同步5.45.4 各種自動測試技術(shù)比較各種自動測試技術(shù)比較應(yīng)該說,這三種技術(shù)是對技術(shù)實現(xiàn)方法的一種分類,在實際實施自動回歸測試系統(tǒng)時,不一定限制在某一種實現(xiàn)技術(shù)上,也有可能在一個具體的實施項目中會用到所有三種技術(shù)。另外,這三種技術(shù)的實現(xiàn)具體細節(jié)會根據(jù)實際應(yīng)用環(huán)境、實施方法的不同而不同,尤其是腳本技術(shù)和數(shù)據(jù)驅(qū)動技術(shù),不同實現(xiàn)方法對自動回歸測試系統(tǒng)的影響很大,下表給出了一般性的評價,僅供參考。特性特性錄制回放錄制回放腳本技術(shù)腳本技術(shù)數(shù)據(jù)驅(qū)動技術(shù)數(shù)據(jù)驅(qū)動技術(shù)可維護性低中高可靠性低高高效率低中高可復(fù)用性低中高健壯性低高高可移植性低低高易用性高低高精選優(yōu)質(zhì)文檔
36、-傾情為你奉上專心-專注-專業(yè)6 6實施管理建議實施管理建議6.16.1 實施策略建議實施策略建議考慮到建行系統(tǒng)的特點和自動化測試的適用性,對建行測試中心功能自動化測試實施策略有如下建議:分期實施:實施分為兩個階段,先選擇一、兩個試點項目實施,試點成熟后再推廣到其他的項目中;先易后難:選擇的實施對象盡量是非核心的系統(tǒng)或?qū)ㄐ心壳暗钠渌到y(tǒng)影響不大的項目,這樣可以減少實施風(fēng)險,避免對核心系統(tǒng)或其他系統(tǒng)造成進度等影響;選擇穩(wěn)定的功能:自動化測試如果對功能不穩(wěn)定的系統(tǒng),會造成測試腳本的維護工作量比較大,自動化測試會被異常中止的情況;逐步完善:自動化測試體系不僅僅包括測試腳本的錄制編寫和執(zhí)行,還包括測試數(shù)據(jù)環(huán)境
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 倉儲物流信息化管理與運輸服務(wù)合同
- 跨國公司境內(nèi)股權(quán)轉(zhuǎn)讓及稅務(wù)籌劃協(xié)議
- 生態(tài)柴油購銷合同范本與規(guī)范
- 成都租賃合同(含租客租后押金退還)
- 民宿民宿風(fēng)格改造裝修合同
- 互聯(lián)網(wǎng)保險保本投資協(xié)議
- 北京二手房交易稅費減免咨詢與代理合同
- 餐飲店拆伙協(xié)議及員工安置合同
- 時尚購物廣場門面房租賃與品牌合作合同
- 腫瘤的影像學(xué)診斷
- AI技術(shù)賦能中小學(xué)教學(xué)模式創(chuàng)新與實踐研究
- 山西焦煤集團招聘筆試題庫2025
- 2025汾西礦業(yè)井下操作技能人員招聘300人(山西)筆試參考題庫附帶答案詳解析
- 健康吃肉課件
- 《國家糧食和物資儲備局垂直管理系統(tǒng)重大生產(chǎn)安全事故隱患判定標準(試行)》解讀與培訓(xùn)
- 2025至2030年中國速凍豆角行業(yè)投資前景及策略咨詢報告
- (2025)交管12123駕駛證學(xué)法減分題庫含答案大全
- 學(xué)校食堂合同范本模板
- 2025年衛(wèi)生類事業(yè)單位(醫(yī)學(xué)基礎(chǔ)知識)公開招聘必刷題庫(300題)
- 淫羊藿甙項目可行性研究報告模板范文(立項備案項目申請)
- 下水改造合同協(xié)議
評論
0/150
提交評論