孫萌婧
(陜西職業(yè)技術(shù)學(xué)院 陜西 西安 710100)
該金融行業(yè)中,應(yīng)用新型的收單業(yè)務(wù)處理平臺,也就是面向收單機構(gòu)以及第三方支付服務(wù)機構(gòu)的系統(tǒng),在系統(tǒng)的軟件實現(xiàn)中,不僅包括余額查詢、消費、預(yù)授權(quán)、消費撤銷、預(yù)授權(quán)撤銷以及預(yù)授權(quán)完成等交易,而且,在該金融軟件設(shè)計中,還將會應(yīng)用到機頂盒、互聯(lián)網(wǎng)、電話、手 機、POS、自助終端等多項設(shè)備。
金融軟件的構(gòu)架如圖1所示。
隨著我國市場經(jīng)濟的發(fā)展,在金融市場中的競爭也逐漸加劇,因此為創(chuàng)新金融行業(yè)業(yè)務(wù)水平,提升金融行業(yè)的信息化步伐,在金融行業(yè)中應(yīng)用金融軟件,不僅可以保障金融企業(yè)的處理業(yè)務(wù)速度,也可以改善金融服務(wù)質(zhì)量,滿足金融企業(yè)的業(yè)務(wù)需求[1]。因此,針對金融軟件工具,實施軟件測試,不僅可以降低金融軟件風(fēng)險,也可以降低為金融企業(yè)的金融服務(wù)提供重要保障,提升 金融軟件的處理效率,通過軟件測試,可以及時發(fā)現(xiàn)金融軟件中的弊端,提升企業(yè)的金融服務(wù)水平。并且針對金融軟件實施測試,還記及時針對軟件中的問題找出解決方法,提升金融軟件服務(wù)水平,滿足用戶的個性化需求,改善金融行業(yè)的服務(wù)質(zhì)量。

圖1 金融軟件業(yè)務(wù)構(gòu)架圖Fig.1 Financial software business architecture diagrams
對于金融軟件測試中,首先就是制訂測試計劃,依據(jù)金融軟件項目組織結(jié)構(gòu)、通過分析軟件項目的組織結(jié)構(gòu),從而可以有效明確測試人員在軟件測試項目中所需要承擔的權(quán)利與義務(wù),從而還應(yīng)該確立測試應(yīng)承擔的責(zé)任,描述清楚測試工作的流程及溝通方式。并能夠制定需求規(guī)格說明書,開發(fā)計劃測試任務(wù)。并且還需要對整個金融軟件測試工作進行細化,分析在金融軟件測試做需要用到的測試方法、原則、測試環(huán)境、風(fēng)險與應(yīng)急等,提升金融軟件測試水平。
在金融軟件測試中,目的就是要發(fā)現(xiàn)在軟件程序中的錯誤,從而執(zhí)行測試程序發(fā)現(xiàn)在軟件中尚未發(fā)現(xiàn)的錯誤;在金融軟件測試中,就是為確保金融軟件質(zhì)量符合用戶需求,提高金融軟件運行中的穩(wěn)定性,減少軟件使用中誤差發(fā)生[2]。并且軟件測試的目的,還是要降低金融軟件開發(fā)風(fēng)險,提高金融軟件的性能,使其滿足需求分析中的要求。并且在軟件測試中,應(yīng)該確保系統(tǒng)中各項功能的正常運行,如中獎和折扣、短信通知、積分消費等,都應(yīng)該確保軟件系統(tǒng)的安全,并且檢測金融軟件中的用戶安全管理,針對高風(fēng)險商戶信息以及黑名單卡等,測試其專門風(fēng)險控制力度,降低金融軟件故障,建設(shè)軟件故障的發(fā)生。
對于該金融軟件的測試中,將會應(yīng)用到軟件功能測試與性能測試方法、黑盒測試、白盒測試、第三方測試等,其中功能測試,就是驗證軟件的全部功能是否可以正確執(zhí)行[3];主要針對系統(tǒng)數(shù)據(jù)的接收、處理以及檢索的檢測。性能測試,就是測試金融軟件是否符合軟件的性能需求,保證金融軟件可以在實際中正常運行。其中的第三方測試,就是針對金融軟件選擇第三方可信機構(gòu),將軟件測試任務(wù)交給他們,完成對軟件的測試工作。
針對金融軟件的功能測試,就是要測試軟件的處理業(yè)務(wù)響應(yīng)速度,以及系統(tǒng)的穩(wěn)定性,系統(tǒng)業(yè)務(wù)流態(tài)以及系統(tǒng)的界面是否友好等,以保證金融軟件系統(tǒng)可以正常運行,降低錯誤發(fā)生。其測試步驟如圖2所示。

圖2 功能測試中業(yè)務(wù)流處理的結(jié)構(gòu)圖Fig.2 Function test of business flow chart
根據(jù)設(shè)定好的測試用例,將其輸入系統(tǒng)軟件進行測試,以確保系統(tǒng)軟件的正常運行。對于金融軟件的前臺業(yè)務(wù)測試中,主要就是針對頁面進行測試,檢測其前臺的功能頁面,將這個作為整個軟件測試中的重點,以代碼走查的方式,實現(xiàn)對金融軟件系統(tǒng)安全性、效率、程序健壯性的測試,以確保金融軟件的功能滿足用戶需求[4]。在用戶登錄系統(tǒng)中,其頁面平臺中應(yīng)該可以根據(jù)權(quán)限及角色的不同,分別加載相應(yīng)的功能頁面;系統(tǒng)運行的結(jié)果通過查詢頁面和圖形報表等方式展現(xiàn)給用戶,測試中既包含頁面功能的驗證,又應(yīng)該結(jié)合金融行業(yè)特點,對頁面數(shù)量單位、金額截位、默認值、提示信息、查詢樣式、報表格式等進行統(tǒng)一風(fēng)格的布局檢驗。對軟件平臺以代碼走查的方式進行測試,檢查開發(fā)人員對軟件構(gòu)件的選擇集應(yīng)用是否正確,可以解決系統(tǒng)程序中的失誤,提升系統(tǒng)健壯性,在前臺編碼基礎(chǔ)上,測試封裝后構(gòu)件的程序健壯性、系統(tǒng)安全性以及效率等問題,并為程序員提供開發(fā)平臺的各類構(gòu)件庫,提交相應(yīng)的測試報告以及使用說明。輸入數(shù)據(jù)中,還要包括小于邊界值、等于邊界值以及大于邊界值三種等價類測試條例,該步驟中功能測試用例100個,測試用例覆蓋4個功能模塊,涉及158種事務(wù)類型,有效清除錯誤程序8個,提升金融軟件質(zhì)量。
對于金融軟件的中臺業(yè)務(wù)流程測試中,該測試部分是風(fēng)險控制與流程管理的重點,應(yīng)該確保風(fēng)險指標信用、限額等等交易數(shù)據(jù),可以通過授權(quán)、授信、審批等傳到后臺,從而返回風(fēng)險判斷結(jié)果。針對該部分的集成測試中,選擇使用路徑覆蓋法進行測試,系統(tǒng)流程劃分成基本流與備選流。針對基本流作為經(jīng)過用例的簡單路徑,我們用直黑線表示,對于備選流,可以有多個,如圖3所示。

圖3 測試結(jié)果Fig.3 Test results
在該測試中,遍歷所有流程分支,將其遍歷設(shè)計為基本流->備選流2->備選流3,分析分支判斷條件,設(shè)計測試用例,如果分支都被選擇完畢,那么測試就將結(jié)束。該測試可以有效檢測金融軟件的性能,判斷金融軟件是否符合用戶需求。在該測試中,次測試需求用例419個,測試用例的設(shè)計對需求覆蓋率可以達到99.8%。功能測試用例設(shè)計6368個,其中的流程用例設(shè)計有364個,36個基本流[5],328個備選流,共發(fā)現(xiàn)錯誤軟件程序12個,經(jīng)修復(fù)后,大大提升金融軟件工作效率。
針對金融軟件后臺業(yè)務(wù)測試中,需要進行深度測試,針對后臺的金融算法進行分析,完成核心層軟件的模擬試算、風(fēng)險分析以及賬務(wù)推導(dǎo)等工作,提升系統(tǒng)的兼容性,封裝系統(tǒng)復(fù)雜功能,改建金融軟件系統(tǒng)的功能。對系統(tǒng)的金融算法分析核心層,應(yīng)該實現(xiàn)系統(tǒng)的兼容性與可擴展性,對“金融底層”進行測試,根據(jù)Web Service接口方式與對象接口方式,驗證系統(tǒng)計算的精準性,應(yīng)該以盡早測試原則,分析系統(tǒng)應(yīng)用層對系統(tǒng)金融底層調(diào)用需求,開發(fā)測試頁面,供測試人員開發(fā)測試頁面用例,驗證輸入與輸出結(jié)果的準確性,確保后臺業(yè)務(wù)同實際用戶無直接交互。對于測試用例設(shè)計中,后臺測試用例應(yīng)該采用模擬數(shù)據(jù)法以及歷史數(shù)據(jù)分析法,首先,利于第三方軟件手工編制業(yè)務(wù)數(shù)據(jù),并匯總計算生成報表,與結(jié)果數(shù)據(jù)進行對比;其次,就是向數(shù)據(jù)庫批量導(dǎo)入業(yè)務(wù)數(shù)據(jù),對其生成結(jié)果與系統(tǒng)內(nèi)歷史報表結(jié)果進行比對,以驗證后系統(tǒng)批處理效率與容錯能力。對于后臺測試的集成測試,采用“先分再合”測試方法,確保系統(tǒng)頁面風(fēng)格一致,模擬后臺接口數(shù)據(jù),錄入測試用例,從而比對軟件結(jié)果,保證系統(tǒng)全局軟件測試進度,在該測試中,在用例設(shè)計中,主要測試142條測試用例,并完成對系統(tǒng)的集成測試,不僅確認金融底層的正確性,同時也發(fā)現(xiàn)軟件缺陷21條,修復(fù)錯誤軟件程序21條,提升金融軟件的容錯能力。
以上金融軟件測試之后,使得金融軟件在企業(yè)中發(fā)揮更大的使用效率,提高企業(yè)70%的工作效益,并且也降低金融軟件發(fā)生故障的幾率,比從前降低40%,大大改善金融企業(yè)的金融軟件質(zhì)量,使金融軟件符合實際的用戶需求。
綜上所述,針對金融行業(yè)的軟件進行軟件測試工作,應(yīng)用有效的測試工具,結(jié)合金融行業(yè)軟件的特征,制定完整的金融軟件測試方案,詳細分析被測金融軟件系統(tǒng)的功能需求,不僅可以提升金融業(yè)軟件服務(wù)的水平,也可以有效降低金融軟件運營故障的發(fā)生,優(yōu)化金融軟件執(zhí)行流程,提升金融軟件性能。
[1]于凌云.軟件測試的實踐研究 [J].電腦知識與技術(shù),2012,07(18):41-42.YU Ling-yun.The practice of software testing research[J].Computer Knowledge and Technology,2012,18(7):41-42.
[2]吳葳葳.對軟件工程中測試的思考 [J].科技致富向?qū)В?011,14(12):76-77.WU Wei-wei.Consideration of software engineering test[J].Science and Technology to Become Rich Wizard,2011,14(12):76-77.
[3]聞怡.構(gòu)件軟件測試技術(shù)在程序研發(fā)中的應(yīng)用[J].西安文理學(xué)院學(xué)報:自然科學(xué)版,2010,21(14):56-57.WEN Yi.Application of component software testing technology in the application development[J].Journal of Xi'an College of Arts and Science:Natural Science Edition,2010,21(14):56-57.
[4]王曉華,王峙,鐘凈.提高企業(yè)應(yīng)用系統(tǒng)軟件測試質(zhì)量的關(guān)鍵與對策[J].信息系統(tǒng)工程,2011,34(6):45-46.WANG Xiao-hua,WANG Zhi,ZHONG Jing.Thekeyto improve the quality of enterprise application system software testing and countermeasures [J].Information Systems Engineering,2011,34(6):45-46.
[5]陶幸輝,宋志剛.軟件系統(tǒng)測試類型及測試用例設(shè)計[J].科技經(jīng)濟市場,2012,24(32):54-57.TAO Xing-hui,SONG Zhi-gang.Software system test type and test case design [J].Science and Technology Economic Market,2012,24(32):54-57.
[6]陶乃利,劉文波.基于UML的自動測試系統(tǒng)軟件面向?qū)ο蠼J].電子科技,2011,24(2):92-94.TAO Nai-li,LIU Wen-bo.The automatic test system based on UML object-oriented modeling software [J].Journal of Electronic Science and Technology,2011,24(2):92-94.