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