這里所指的對VT100的測試,主要是指對銀行柜員業(yè)務(wù)系統(tǒng)進(jìn)行測試,目標(biāo)是要盡可能多地測試銀行業(yè)務(wù)分支,對一些比較重要的字段的數(shù)據(jù)覆蓋(比如金額等),找出隱藏在系統(tǒng)中的缺陷,確保銀行帳務(wù)的準(zhǔn)確。
為了達(dá)到以上目標(biāo),我們主要引入了自動化測試,來代替?zhèn)鹘y(tǒng)業(yè)務(wù)人員的手工測試,本文主要針對銀行終端功能測試-自動化,不涉及性能測試以及手工測試。
自動化測試的利弊:自動化測試優(yōu)點(diǎn),可維護(hù)性高,適應(yīng)于大批量回歸測試,有效減少測試總體成本,測試覆蓋率以及測試效率較高,不易受人員以及環(huán)境等外部因素限制不足之處,前期投入較大,不適合測試需求變化較大的系統(tǒng),對自動化工程師自身要求較高。
1 銀行終端簡介
銀行終端前置機(jī),也就是銀行柜員業(yè)務(wù)系統(tǒng)GUI,提供銀行柜員操作帳務(wù),查詢,日常管理等功能。
2 自動化環(huán)境構(gòu)建
在對終端進(jìn)行自動化之前,我們需要提供一些必要的環(huán)境。首先自然是一款自動化測試工具,目前使用我公司的Terminal AutoRunner(以下簡稱Tar)。再次是一個相對穩(wěn)定的被測系統(tǒng),這里所指的相對穩(wěn)定的系統(tǒng),主要是指系統(tǒng)的主要核心功能已經(jīng)基本完成,并已經(jīng)通過了單元測試以及集成測試,基本達(dá)到了進(jìn)入自動化的標(biāo)準(zhǔn)。接下來,就是一些比較資深的銀行系統(tǒng)自動化工程師,測試從某種意義上說,對業(yè)務(wù)知識的了解比測試技術(shù)更加重要。還有一些硬件上的支持,比如測試環(huán)境最好有2個以上,DBA的支持,可以實時備份還原測試環(huán)境,以及一些文檔,例如需求說明書,開發(fā)概要設(shè)計,usecase等。
3 腳本生成及調(diào)試
一個自動化腳本相對于一個業(yè)務(wù)交易,比如對公開戶,活期存款等。
我們知道,自動化測試投入最大的就是前期編寫調(diào)試腳本,一個好框架能夠使編寫自動化腳本的效率大大提高,我們采用的一套測試腳本生成程序,以最快的速度生成腳本,自動化工程師,只需要根據(jù)實際情況調(diào)試腳本,就可以完成這個階段的任務(wù)。
4 自動化測試場景設(shè)計
測試場景相當(dāng)于一個業(yè)務(wù)流,就是指實際業(yè)務(wù)中,經(jīng)常串聯(lián)在一起的交易,來完成某個業(yè)務(wù)或者管理工作,比如上級憑證調(diào)撥--憑證入庫--憑證分配柜員--柜員領(lǐng)用。
測試用例設(shè)計也是目前測試過程中的一個難題,好的測試用例可以使得測試更容易發(fā)現(xiàn)缺陷。這部分的工作由我公司的TestCase Designer完成(以下簡稱Tcd)。Tcd通過業(yè)務(wù)流程visio圖和腳本的結(jié)合,完成每一個測試場景,再對不同的數(shù)據(jù)進(jìn)行約束設(shè)計,使得測試用例更加符合實際生產(chǎn)環(huán)境,最后由Tcd自動生成測試用例,并導(dǎo)入我們公司另外一款測試管理工具TestCenter。
5 測試運(yùn)行
對于自動化測試來說,完成了腳本以及設(shè)計之后,執(zhí)行就變得相當(dāng)容易了。我們可以打開TestCenter,選擇之前導(dǎo)入的測試集,運(yùn)行即可。TestCenter可以在多臺PC機(jī)上同步運(yùn)行腳本,更加逼真的模擬實際生產(chǎn)環(huán)境。
6 結(jié)果分析
測試分析也是測試過程中重要的一步,TestCenter完成運(yùn)行后,會自動生成測試報告,顯示運(yùn)行明細(xì)情況,對運(yùn)行失敗的測試用例進(jìn)行截圖,并分析出測試需求的覆蓋率等數(shù)據(jù),讓用戶更好的了解目前系統(tǒng)中所存在問題。
新聞熱點(diǎn)
疑難解答