自動化測試?yán)斫饧皩?shí)踐通用版V_第1頁
自動化測試?yán)斫饧皩?shí)踐通用版V_第2頁
自動化測試?yán)斫饧皩?shí)踐通用版V_第3頁
自動化測試?yán)斫饧皩?shí)踐通用版V_第4頁
自動化測試?yán)斫饧皩?shí)踐通用版V_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、自動化測試-理解和實(shí)踐,概念和歷史發(fā)展,測試的基本概念,自動化測試的基本概念,自動化測試的歷史發(fā)展,2,Warmingup,什么是統(tǒng)一術(shù)語系統(tǒng)中的測試?測試階段和測試類型是什么.在IEEE提出的軟件工程標(biāo)準(zhǔn)術(shù)語中,軟件測試被定義為:“通過手動和自動方式運(yùn)行或測試一個系統(tǒng)的過程,其目的是檢查它是否滿足規(guī)定的要求或找出預(yù)期結(jié)果和實(shí)際結(jié)果之間的差異。”軟件測試與軟件質(zhì)量密切相關(guān)。歸根結(jié)底,軟件測試是為了保證軟件質(zhì)量。測試技術(shù)的測試類型、測試技術(shù)的測試階段(test level)、測試技術(shù)的測試活動、測試技術(shù)的測試用例設(shè)計(jì)技術(shù)、測試技術(shù)的單元測試覆蓋需求、測試技術(shù)的集成測試策略、測試實(shí)現(xiàn)、測試工具、測

2、試相關(guān)知識、“開發(fā)與測試模型”v model w model、單元測試的主要關(guān)注點(diǎn)是什么、單元測試16、保證每個程序單元功能和邏輯正確性的最小粒度測試。測試對象是可以測試的最小的程序(代碼)。在不同的被測軟件系統(tǒng)中,有多種單元劃分標(biāo)準(zhǔn)。單元的劃分基于適合代碼級的測試。軟件單元代碼中的覆蓋率(語句覆蓋率、分支覆蓋率)是本地數(shù)據(jù)結(jié)構(gòu)邊界條件錯誤處理軟件單元的功能、性能和接口。集成測試的主要關(guān)注點(diǎn)是什么?集成測試,17,集成測試,也稱為組裝測試或聯(lián)合測試。在單元測試的基礎(chǔ)上,根據(jù)設(shè)計(jì)要求(例如,根據(jù)結(jié)構(gòu)圖)將單元/模塊組裝成子系統(tǒng)或系統(tǒng)的過程和結(jié)果被測試?;谲浖乓O(shè)計(jì)說明書,檢查軟件單元、軟件單

3、元和集成軟件系統(tǒng)之間的接口關(guān)系,驗(yàn)證集成軟件系統(tǒng)是否滿足設(shè)計(jì)要求。軟件單元之間的各種接口(調(diào)用、指令、消息、數(shù)據(jù)文件、共享存儲器等)。)全局?jǐn)?shù)據(jù)結(jié)構(gòu)單元之間的依賴關(guān)系集成了對象、系統(tǒng)測試的功能,系統(tǒng)測試的主要關(guān)注點(diǎn)是什么系統(tǒng)測試,系統(tǒng)測試是將已確認(rèn)的軟件、計(jì)算機(jī)硬件、外圍設(shè)備、網(wǎng)絡(luò)等要素結(jié)合在一起,對信息系統(tǒng)進(jìn)行各種組裝測試和確認(rèn)測試。其目的是通過與系統(tǒng)需求的對比,找出開發(fā)的系統(tǒng)與用戶需求之間的不一致或矛盾,從而提出更完善的方案。主要目的是驗(yàn)證系統(tǒng)的完整性和正確性,完整性是指系統(tǒng)沒有功能和模塊丟失,系統(tǒng)的整體功能可用正確性是指系統(tǒng)和需求,自動化測試在哪里,被測對象是誰,如何操作被測對象?如何隔

4、離測試對象?本文作者介紹了自動化測試的概念和深入理解,1、圖形用戶界面自動化回歸測試和商業(yè)工具,2、財務(wù)自動化回歸測試,3、4、面向財務(wù)的自動化測試框架,自動化測試概念,測試設(shè)置輸入和預(yù)期輸出,給出被測系統(tǒng)的輸入,獲取實(shí)際輸出,并檢查測試的實(shí)際輸出是否與預(yù)期輸出一致。傳統(tǒng)上,測試是由測試人員手工完成的。自動化測試使用工具而不是人工來操作被測系統(tǒng)并檢查輸出過程。自動化測試的關(guān)鍵是“減少人工操作,提高測試效率”。21、澄清自動化測試的概念,自動化測試等于QTP嗎?當(dāng)談到自動化測試時,人們通常會立即想到使用QTP這樣的自動化測試工具。事實(shí)上,這只是自動化測試的一部分。自動化測試可以在不同的級別進(jìn)行,

5、包括單元測試、集成測試、系統(tǒng)測試和驗(yàn)收測試。可以在系統(tǒng)回歸測試中自動執(zhí)行測試分析嗎?測試有許多活動,包括計(jì)劃制定、測試分析和設(shè)計(jì)、用例集構(gòu)建、測試執(zhí)行、結(jié)果收集和測試報告。因?yàn)榉治龊驮O(shè)計(jì)工作需要更多的智能活動,而且基本材料不標(biāo)準(zhǔn)化,自動化測試和分析是不可行的。自動化主要用于回歸測試,22。自動化測試簡單嗎?幾個經(jīng)常被忽略的問題:測試工作是一個機(jī)械的動作還是一個在執(zhí)行用例時需要思考的動作?有大量的測試用例嗎?測試用例之間有關(guān)聯(lián)嗎?測試環(huán)境易于配置嗎?測試數(shù)據(jù)容易準(zhǔn)備嗎?23、自動化測試不簡單!(自動化)測試要求:相同的輸入得到相同的輸出??紤]到測試的全面性,為所有被測試的函數(shù)建立測試用例來為后續(xù)

6、的回歸測試形成一組測試用例是一項(xiàng)非常昂貴的任務(wù)。還有一個隱含的前提,即被測系統(tǒng)應(yīng)該保持相同的狀態(tài)。因此,只有當(dāng)系統(tǒng)狀態(tài)可以方便地維護(hù)和恢復(fù)時,回歸測試用例集才具有實(shí)用價值。注意:維護(hù)系統(tǒng)狀態(tài)-更小的單元,更容易!單元測試是最容易的方面,系統(tǒng)級測試不容易!所有項(xiàng)目都適合自動化測試嗎?銀行中兩種常見的項(xiàng)目類型:測試新項(xiàng)目和維護(hù)項(xiàng)目:被測系統(tǒng)是全新的系統(tǒng)測試資產(chǎn),需要全新的開發(fā);測試分析、設(shè)計(jì)和開發(fā)測試流程需要對維護(hù)項(xiàng)目進(jìn)行試運(yùn)行測試:在已經(jīng)實(shí)施測試資產(chǎn)測試的情況下,對原始系統(tǒng)進(jìn)行了更新和維護(hù);25、自動化測試適用于維修項(xiàng)目的回歸測試;回歸測試:用相同的測試用例集重新測試不同的(或稍微改變的)被測系

7、統(tǒng)。在軟件系統(tǒng)的服務(wù)期內(nèi),會有各種變化,每一種變化都需要測試和驗(yàn)證。具體來說,一方面,有必要測試和驗(yàn)證新的變更是否達(dá)到了預(yù)期的目的;另一方面,有必要檢查這些變化是否對其他功能產(chǎn)生了負(fù)面影響。因?yàn)樵诿總€回歸測試中需要執(zhí)行大量相同的用例,所以工作量很大,重復(fù)性工作也很大。因此,在維護(hù)項(xiàng)目的回歸測試中使用自動化測試方法更合適。注:自動化測試適用于維護(hù)項(xiàng)目的回歸測試!所有系統(tǒng)類型都適合自動化測試嗎?什么類型的系統(tǒng)交易處理系統(tǒng)(手動操作)業(yè)務(wù)管理系統(tǒng)(手動操作)數(shù)據(jù)分析系統(tǒng)取決于系統(tǒng)的輸入和輸出。有些系統(tǒng)主要依靠手動操作和輸入數(shù)據(jù),輸出數(shù)據(jù)服務(wù)于操作員。一些系統(tǒng)由其他系統(tǒng)或工具程序操作和輸入數(shù)據(jù)。當(dāng)然,

8、上述分類并不是絕對的?;谌藱C(jī)交互的事務(wù)處理系統(tǒng)和業(yè)務(wù)管理系統(tǒng)適合自動化測試。27,自動化測試中需要注意的問題,自動化測試資產(chǎn)的準(zhǔn)備(案例編寫、腳本開發(fā)和維護(hù)、自動化測試環(huán)境和數(shù)據(jù)準(zhǔn)備.)的工作量很大。各種公司的大多數(shù)解決方案都是為了解決這個問題。當(dāng)自動化測試用例(或腳本)達(dá)到一定水平時,很難安排、調(diào)度和執(zhí)行自動化測試。比較、檢查和分析自動測試結(jié)果非常困難。自動化測試工具如何更好地與被測系統(tǒng)匹配和結(jié)合?應(yīng)該注意自動化測試的投資回報,避免自動化,片面強(qiáng)調(diào)覆蓋和靈活性。從技術(shù)角度來看,單元測試是應(yīng)用最好的自動化測試,而性能測試是不可避免的自動化測試?;趫D形用戶界面的自動回歸(系統(tǒng))測試正在進(jìn)行,

9、但投資巨大,實(shí)用性和可維護(hù)性問題突出。圖形用戶界面自動化測試必須依賴工具,并將工具與被測試的系統(tǒng)相匹配,但是僅僅工具是不夠的!29,我們的經(jīng)驗(yàn),項(xiàng)目的成功實(shí)施中國外匯交易中心自動化測試,上海銀行自動化測試我們的團(tuán)隊(duì)成員也是自動化測試項(xiàng)目的發(fā)起人和骨干,如交通銀行和華夏銀行,30,主題,31,自動化測試的概念和深入了解,1,圖形用戶界面自動化回歸測試和業(yè)務(wù)工具,2,自動化回歸測試在金融領(lǐng)域,3,4,自動化測試框架的金融領(lǐng)域,類型的自動化測試,我們正在討論,這里我們主要討論基于圖形用戶界面的自動化測試。對于基于接口的單元測試和自動化測試,我們將在其他材料中詳細(xì)討論。如果您有任何要求,請?jiān)儐栁覀儯?

10、2,用戶界面自動化測試的進(jìn)展,文本的文本捕獲/回放缺點(diǎn):動態(tài)內(nèi)容處理,時間同步,文本捕獲/回放/腳本的維護(hù)文本捕獲/回放/腳本(PC)缺點(diǎn):需要程序開發(fā)技能,程序界面中的“WindowsandC/S”缺點(diǎn):注意對非標(biāo)準(zhǔn)控件和行為的處理,以及軟件工程的要求,如腳本重用和維護(hù),導(dǎo)致了測試框架(Framework)從專有框架到商業(yè)框架(Web)的要求。缺點(diǎn):它仍然嚴(yán)重依賴對象控制應(yīng)用程序圖、圖形用戶界面圖、對象存儲庫、圖形用戶界面自動化測試的技術(shù)基礎(chǔ)、對象識別和控制技術(shù)如何操作和控制被測系統(tǒng),以及收集信息。詳細(xì)描述是接口對象或控件的識別和控制技術(shù)。這是當(dāng)前主流商業(yè)自動化測試工具(如QTP和RFT)的

11、關(guān)鍵技術(shù)之一。腳本技術(shù)使用什么方法來描述系統(tǒng)的手動操作。詳細(xì)描述是基于特定腳本的記錄、回放、參數(shù)化、編輯和維護(hù)技術(shù)。在圖形用戶界面自動化測試中,測試工具將被測系統(tǒng)的手動操作記錄為腳本,并支持這些腳本的重放,即測試工具根據(jù)腳本的描述驅(qū)動被測系統(tǒng),從而通過工具實(shí)現(xiàn)與手動操作相同的系統(tǒng)操作。腳本通常由動作序列描述,每個動作包括操作對象、動作和操作數(shù)據(jù)。圖形用戶界面自動化測試中相對高級的技術(shù)是參數(shù)化數(shù)據(jù),從而使腳本能夠在執(zhí)行過程中動態(tài)配置測試數(shù)據(jù)。因?yàn)橛涗浀拇a通常是不可維護(hù)的,并且有許多無用的代碼,所以測試腳本也可以直接編寫。35,圖形用戶界面自動化測試的其他問題,測試數(shù)據(jù)驅(qū)動的數(shù)據(jù)表易于編輯和維護(hù)

12、數(shù)據(jù)參數(shù)化操作檢查點(diǎn)操作簡單,支持各種檢查點(diǎn)-對象,文本,位圖和其他結(jié)果報告圖形易于瀏覽,36,經(jīng)典工具-QTP,通用工具試圖適用于各種用戶界面技術(shù),37,新興,通用,經(jīng)典,winrunner,QuickTestProfessional -QTP2為經(jīng)典工具,提供關(guān)鍵字視圖,提高可讀性和可維護(hù)性的腳本,38,涌現(xiàn),通用,經(jīng)典, 與代碼的測試構(gòu)建和維護(hù)分開,突破性的動態(tài)屏幕技術(shù)添加驗(yàn)證點(diǎn)添加測試步驟理解測試步驟上下文的離線編輯,您的組織對自動化有什么要求?原來的手工案例可以重用嗎?-形成自動化案例和腳本?原始手冊案例的編寫程度如何?人工病例之間有聯(lián)系嗎?每個手動案例的先決條件是什么?在被測試的系

13、統(tǒng)被改變后,自動化測試能快速實(shí)現(xiàn)嗎?您選擇運(yùn)行哪些測試用例?如何安排這些測試用例?測試環(huán)境是如何準(zhǔn)備的?如何配置被測系統(tǒng)?如何準(zhǔn)備測試數(shù)據(jù)?測試過程需要人工干預(yù)嗎?如何檢查測試結(jié)果?自動化工具能在多大程度上解決記錄手動測試用例執(zhí)行的問題一個腳本化的解決方案:固定的動作可以重復(fù)!問題1:出現(xiàn)在細(xì)節(jié)層面:對象和操作的綁定。影響:對對象的更改將導(dǎo)致與腳本中的對象相關(guān)的一系列更改!問題2:發(fā)生在腳本的整體級別:重復(fù)腳本。影響:當(dāng)一個公共函數(shù)改變時,需要維護(hù)大量的腳本!這些是軟件工程問題和使用軟件工程的解決方案:1。從操作中分離對象;2.腳本模塊化;40.自動化工具在多大程度上可以通過分離腳本中的數(shù)據(jù)來

14、解決這個問題?參數(shù)化問題:在同一操作序列中可以使用不同的數(shù)據(jù)現(xiàn)象:開戶時可以選擇不同的證書類型。角色:可以重用腳本來提高測試覆蓋率!問題1:測試的業(yè)務(wù)數(shù)據(jù)可能與系統(tǒng)的背景數(shù)據(jù)相關(guān);測試應(yīng)使用有效的客戶和賬戶影響力;測試集取決于基本數(shù)據(jù)集;問題2:不同腳本之間的數(shù)據(jù)可能是相關(guān)的;前一個腳本的輸出將用作后一個腳本的輸入。影響:業(yè)務(wù)應(yīng)該是連續(xù)的。41.自動化工具能在多大程度上解決這個問題?測試人員不熟悉腳本技術(shù),不能理解記錄的腳本。手動編輯和直接編寫腳本也很困難。技術(shù)要求高的工具對此無能為力!然而,需要腳本開發(fā)技術(shù)來使自動化測試更加健壯!自動化工具能在多大程度上解決問題并回到核心內(nèi)容測試什么?如何測

15、試?如何檢查?這些測試內(nèi)容是如何反映在測試腳本(集合)中的?這不是工具的范圍,而是測試分析和測試設(shè)計(jì)的問題。手動測試和自動測試都存在這個問題。對于金融系統(tǒng)來說,它有自己的特點(diǎn)和適用的測試方法。43、我們利用商業(yè)工具基于商業(yè)工具,充分發(fā)揮工具對象定義的能力:描述性定義,簡化對象編輯和維護(hù)封裝對象操作:簡化腳本編寫,提高腳本的可重用性,腳本自動生成:對象, 解釋和執(zhí)行操作和數(shù)據(jù)以完成腳本處理和業(yè)務(wù)數(shù)據(jù)傳輸:業(yè)務(wù)流程用于完成事務(wù)之間的業(yè)務(wù)數(shù)據(jù)傳輸,并繼續(xù)使用業(yè)務(wù)和功能分析作為起點(diǎn)來建立測試集,44,主題,45,自動化測試概念和深入理解,1,圖形用戶界面自動化回歸測試和業(yè)務(wù)工具,2,金融領(lǐng)域的自動化回

16、歸測試,3,4,金融領(lǐng)域的自動化測試框架, 金融領(lǐng)域應(yīng)用系統(tǒng)的特點(diǎn),大量的金融產(chǎn)品,每個產(chǎn)品中可能存在的各種生命周期(業(yè)務(wù)流程),需要梳理的業(yè)務(wù)流程,交易服務(wù),交易要素,多個要素之間的關(guān)系,狀態(tài)復(fù)雜的系統(tǒng)參數(shù)和系統(tǒng)的用戶管理時間參數(shù),46,通過實(shí)例分析金融應(yīng)用系統(tǒng)的測試,商業(yè)銀行核心交易系統(tǒng)商業(yè)銀行國際結(jié)算系統(tǒng)的外匯交易中心有本地貨幣交易系統(tǒng),47。 示例1核心交易系統(tǒng)、核心系統(tǒng)功能組織和柜員管理通用參數(shù)、管理客戶、賬戶管理、存款、貸款、支付和結(jié)算。大量金融產(chǎn)品和服務(wù)與大量外圍系統(tǒng)進(jìn)行交互式在線交易和批量處理。由于金融產(chǎn)品和服務(wù)的快速創(chuàng)新,如何覆蓋這些產(chǎn)品是測試交易系統(tǒng)的關(guān)鍵。48.案例1:核

17、心交易系統(tǒng)分析:產(chǎn)品生命周期存款:開戶、存款、取款、銷戶;其他特殊業(yè)務(wù)貸款:開戶、貸款、歸還、銷戶;其他特殊操作支付和結(jié)算:不同情況下的網(wǎng)上交易,如銀行內(nèi)部和銀行間的利息、結(jié)算、扣款、記賬、轉(zhuǎn)賬等產(chǎn)品生命周期的批量處理,根據(jù)會計(jì)時間形成一個“有意義”的網(wǎng)上交易和批量處理系列!例1核心交易系統(tǒng)測試,交易測試IPO,系統(tǒng)處理一組特定的輸入元素,給出這組輸出元素,并做相應(yīng)的記錄。它是否檢查系統(tǒng)對于每個特定過程是否正確?自始至終在生命周期(業(yè)務(wù)流程)中對產(chǎn)品進(jìn)行測試是為了檢查系統(tǒng)是否正確地處理了產(chǎn)品規(guī)則(例如會計(jì)、利息結(jié)算、狀態(tài)控制等)。)?這是對產(chǎn)品的全面檢查嗎?獨(dú)立交易測試的難度有適當(dāng)?shù)臄?shù)據(jù)。例如

18、,要測試“賬戶關(guān)閉”交易,必須操作一個開放和適當(dāng)?shù)馁~戶!50,例1銀行核心系統(tǒng),產(chǎn)品:200交易:800梳理業(yè)務(wù)流程:3000,51,例1測試策略,固定背景數(shù)據(jù),固定會計(jì)日期,固定機(jī)構(gòu),柜員設(shè)置快速實(shí)施,實(shí)施中見效快,積累經(jīng)驗(yàn),資產(chǎn)可維護(hù)性不斷加強(qiáng),52,例2國際結(jié)算系統(tǒng),主要功能核心業(yè)務(wù)功能導(dǎo)入,導(dǎo)出,匯款,貿(mào)易融資,國內(nèi)證書, 保理公共控制和公共業(yè)務(wù)功能查詢統(tǒng)計(jì)系統(tǒng)架構(gòu)基于流程審批處理模式的相關(guān)業(yè)務(wù)的B/S一致性,53,例2業(yè)務(wù)流程分析,54,信用證簽發(fā)(即期/遠(yuǎn)期),信用證收款(不同支付類型),收款支付,進(jìn)口押匯(融資),進(jìn)口押匯(還款),進(jìn)口押匯(逾期),進(jìn)口押匯(展期),收票拒絕,單個業(yè)務(wù)流程,例2自動化測試覆蓋,55,例3同業(yè)市場本幣交易系統(tǒng), 系統(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論