曾誠(chéng)
摘 要:本文基于銀行新核心系統(tǒng)的特點(diǎn)及多種黑盒測(cè)試方法的優(yōu)缺點(diǎn),提出組合策略的方法解決系統(tǒng)測(cè)試覆蓋性的痛點(diǎn)并進(jìn)行了相關(guān)論述。
關(guān)鍵詞:核心系統(tǒng);黑盒測(cè)試;覆蓋性
一、新一代核心系統(tǒng)簡(jiǎn)述
在二十一世紀(jì)初期,許多銀行的核心系統(tǒng)有很大比例的業(yè)務(wù)無法純粹依靠系統(tǒng)進(jìn)行完成,仍需要手工做賬,無法做到辦公信息化、電子化以及智能化。這種純手工或者半手工的方式大大的消耗了人力資源,并且還存在不小的操作風(fēng)險(xiǎn)?,F(xiàn)今隨著云計(jì)算、區(qū)塊鏈、物聯(lián)網(wǎng)、人工智能等新鮮技術(shù)的不斷涌現(xiàn),近年來國(guó)內(nèi)銀行紛紛進(jìn)行新一代核心系統(tǒng)建設(shè),借鑒互聯(lián)網(wǎng)企業(yè)的相關(guān)經(jīng)驗(yàn)探索分布式IT架構(gòu)及構(gòu)建企業(yè)級(jí)業(yè)務(wù)架構(gòu),旨在提高自身管理效能,提升管理效率以達(dá)到電子化、信息化和智能化辦公。
無論對(duì)于哪家銀行,核心系統(tǒng)的更新升級(jí)都是一項(xiàng)龐大復(fù)雜的系統(tǒng)工程,它具有建設(shè)周期長(zhǎng)、成本高以及涉及要素面廣等特征。從需求分析到項(xiàng)目開發(fā)再到系統(tǒng)測(cè)試,都是系統(tǒng)建設(shè)中不可缺少的環(huán)節(jié),本文著重研究系統(tǒng)測(cè)試這一重要環(huán)節(jié),針對(duì)黑盒測(cè)試,研究其對(duì)于系統(tǒng)的覆蓋性是否全面,旨在為新核心項(xiàng)目建設(shè)提供啟示作用,能夠進(jìn)一步提高銀行業(yè)核心系統(tǒng)建設(shè)水平并推動(dòng)銀行業(yè)信息化、電子化和智能化建設(shè)穩(wěn)步向前發(fā)展。
二、黑盒測(cè)試方法簡(jiǎn)述
黑盒測(cè)試也有另一個(gè)稱法,叫做功能測(cè)試,顧名思義,它是測(cè)試系統(tǒng)中的每項(xiàng)功能是否正常運(yùn)行。所謂黑盒,也就是將系統(tǒng)看作一個(gè)無法打開的黑匣子,不考慮內(nèi)部的結(jié)構(gòu)也不考慮內(nèi)部的算法,只關(guān)注系統(tǒng)的輸入輸出,核查系統(tǒng)功能是否按照其需求說明書來正確使用。
黑盒測(cè)試可以簡(jiǎn)單的分為劃分等價(jià)類、邊界值分析法、錯(cuò)誤推測(cè)法、因果圖法以及場(chǎng)景法等,不同的測(cè)試方法具有不同的測(cè)試特點(diǎn)。劃分等價(jià)類著重于輸入數(shù)據(jù)的集合,邊界值分析重點(diǎn)關(guān)注對(duì)于邊界值的劃分,錯(cuò)誤推測(cè)依賴測(cè)試人員的經(jīng)驗(yàn)和判斷,因果圖強(qiáng)調(diào)輸入條件間的互相組合,場(chǎng)景法基于系統(tǒng)中的不同流程所組成的場(chǎng)景。
黑盒測(cè)試十分適合功能測(cè)試,核心點(diǎn)就在于對(duì)照需求說明書來測(cè)試系統(tǒng)相關(guān)功能,但黑盒測(cè)試的缺點(diǎn)也相應(yīng)明顯,它無法毫無遺漏的進(jìn)行測(cè)試,同時(shí)系統(tǒng)中的一些bug或故障無法通過黑盒測(cè)試進(jìn)行檢測(cè),黑盒測(cè)試主要依賴需求說明書的正確性,如果說明書本身有遺漏或者冗余,黑盒測(cè)試都無法進(jìn)行甄別,這個(gè)問題也是黑盒測(cè)試的痛點(diǎn),在下一節(jié)中會(huì)詳細(xì)描述。
三、黑盒測(cè)試覆蓋性痛點(diǎn)
在黑盒測(cè)試過程中,一個(gè)需求會(huì)相應(yīng)對(duì)應(yīng)數(shù)個(gè)功能點(diǎn),而一個(gè)功能點(diǎn)又對(duì)應(yīng)數(shù)個(gè)測(cè)試案例(n個(gè)正案例和m個(gè)反案例)。多數(shù)的黑盒測(cè)試方法都能夠使其需求覆蓋度達(dá)到100%,但顯然需求覆蓋率并不能作為一個(gè)測(cè)試充分的佐證,因?yàn)榫退阍谀硞€(gè)需求點(diǎn)中,將其對(duì)應(yīng)的功能點(diǎn)都測(cè)試完畢,仍然會(huì)有疏漏,測(cè)試還遠(yuǎn)遠(yuǎn)不能結(jié)束。
(1)輸入正確的用戶名、密碼以及驗(yàn)證碼,最終成功登陸
(2)輸入錯(cuò)誤的用戶名、正確的密碼及驗(yàn)證碼,最終無法登陸
從以上測(cè)試中,我們可以看到第二個(gè)測(cè)試明顯沒有遍歷完所有的錯(cuò)誤可能性,比如錯(cuò)誤的密碼和錯(cuò)誤的驗(yàn)證碼以及它們各自的排列組合。盡管沒有遍歷完所有可能性,但從需求覆蓋率的角度來講,依舊覆蓋全了所有的功能點(diǎn),那么此項(xiàng)需求的測(cè)試覆蓋度就會(huì)變?yōu)?00%。無法考慮到測(cè)試的每一種可能,但從需求覆蓋度的數(shù)據(jù)來看,又已經(jīng)將所有功能點(diǎn)覆蓋,這項(xiàng)數(shù)據(jù)容易讓測(cè)試人員掉以輕心,誤以為已經(jīng)完成測(cè)試工作,這是黑盒測(cè)試的通病,也是本文希望解決的核心問題。
四、銀行新一代核心系統(tǒng)黑盒測(cè)試覆蓋性解決方法
在第二節(jié)中說到,黑盒測(cè)試十分適合功能性測(cè)試,但在銀行新一代核心系統(tǒng)中,測(cè)試需求的種類繁多,大致可分為界面、流程、功能三大類,而每大類下面又會(huì)衍生許多小類,甚至在某些特殊的功能點(diǎn)(比如支付中的反洗錢測(cè)試)會(huì)遍歷十幾道崗位,所以在核心系統(tǒng)中的黑盒測(cè)試非常容易產(chǎn)生疏漏,稍不注意就會(huì)發(fā)生測(cè)試不完善的情況。
針對(duì)不同的系統(tǒng)特點(diǎn)應(yīng)使用不同的黑盒測(cè)試方法。新一代核心系統(tǒng)界面復(fù)雜、流程繁瑣且測(cè)試必須達(dá)到“安全保生產(chǎn)”的效力,故可以使用組合策略的方法來解決黑盒測(cè)試覆蓋性不完整的痛點(diǎn)。
所謂組合策略,就是將幾種不同的測(cè)試方法進(jìn)行綜合考量,通過組合的方式來降低黑盒測(cè)試過程中的疏漏,從而達(dá)到提升其測(cè)試覆蓋性的目的。
以下是筆者針對(duì)銀行新一代核心系統(tǒng)而選取的測(cè)試組合,在往后實(shí)際的應(yīng)用過程可供參考:
(1)在測(cè)試初期,我們應(yīng)首選將輸入、輸出條件進(jìn)行等價(jià)類劃分,這樣才能夠框定測(cè)試案例的范圍,既減少了工作量也提高了測(cè)試效率。
(2)等價(jià)類劃分完畢后,應(yīng)重點(diǎn)分析輸入的邊界值,大部分系統(tǒng)中錯(cuò)誤率最高的就是邊界值,這是應(yīng)著重考慮的部分。
(3)與此同時(shí),我們也需要利用錯(cuò)誤推測(cè)法去進(jìn)行相關(guān)測(cè)試,這一步驟主要依賴測(cè)試人員的經(jīng)驗(yàn)進(jìn)行查漏補(bǔ)缺,將某些系統(tǒng)中容易產(chǎn)生的錯(cuò)誤作為遺漏補(bǔ)充進(jìn)行再一次測(cè)試。
(4)參照系統(tǒng)的相關(guān)邏輯,核查已編測(cè)試案例的邏輯覆蓋程度,針對(duì)前期擬定的測(cè)試覆蓋性標(biāo)準(zhǔn)進(jìn)行測(cè)試補(bǔ)充
(5)系統(tǒng)的功能說明書里如果有輸入條件的特意說明,那么應(yīng)該在等價(jià)劃分類的時(shí)候,多參考借鑒因果圖法或判定表驅(qū)動(dòng)法。
(6)最后在系統(tǒng)的整個(gè)測(cè)試過程中,都需要時(shí)刻把握好場(chǎng)景法,在系統(tǒng)清晰的業(yè)務(wù)流中綜合各種測(cè)試方法并進(jìn)行針對(duì)性使用。
銀行新一代核心系統(tǒng)具有功能繁瑣、界面復(fù)雜、業(yè)務(wù)流程清晰以及安全風(fēng)險(xiǎn)容忍度低等特點(diǎn),在對(duì)其進(jìn)行的黑盒測(cè)試中非常容易產(chǎn)生遺漏的情況,利用組合策略的黑盒測(cè)試方法可提高系統(tǒng)的測(cè)試覆蓋性。
本文基于銀行新核心系統(tǒng)的特點(diǎn)及多種黑盒測(cè)試方法的優(yōu)缺點(diǎn),提出組合策略的方法解決系統(tǒng)測(cè)試覆蓋性的痛點(diǎn),但終歸只是理論上的論述說明。紙上得來終覺淺,絕知此事要躬行,希望在后來人的不斷測(cè)試實(shí)踐中,對(duì)該方法的不妥之處也不斷進(jìn)行修正,爭(zhēng)取早日探索出最完善、最高效的黑盒測(cè)試方法。