專利名稱:一種用于前置測(cè)試的方法、裝置及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及測(cè)試領(lǐng)域,特別是涉及前置系統(tǒng)的測(cè)試領(lǐng)域。
背景技術(shù):
在銀行系統(tǒng)的數(shù)據(jù)集中完成后,業(yè)務(wù)系統(tǒng)可以分為三層主機(jī)、前置和、渠道(前端)。主機(jī)用于完成核心業(yè)務(wù)的數(shù)據(jù)處理;前置實(shí)現(xiàn)各類柜臺(tái)渠道、外圍系統(tǒng)與核心系統(tǒng)主機(jī)之間的數(shù)據(jù)交換和交易控制;前端實(shí)現(xiàn)人機(jī)互動(dòng)的柜面操作。對(duì)前置的測(cè)試(包括單元測(cè)試、壓力測(cè)試等),通常的做法是從真實(shí)的前端或渠道發(fā)起一筆交易,經(jīng)由前置送到主機(jī)系統(tǒng),并得到返回結(jié)果,這樣整個(gè)測(cè)試過(guò)程將依賴多個(gè)環(huán)境,其涉及環(huán)節(jié)多,占用了前端和主機(jī)的軟硬件資源;出現(xiàn)測(cè)試失敗時(shí),不好確定是否是前置的問(wèn)題,測(cè)試結(jié)果分析不方便;環(huán)境配置復(fù)雜,完成一個(gè)即便很簡(jiǎn)單的測(cè)試,也需要多人參加協(xié)調(diào)工作,占用人力資源多;進(jìn)行測(cè)試不方便。
對(duì)于前置的壓力測(cè)試,也有一些現(xiàn)有壓力測(cè)試工具可以采用,例如,Loadrunner等工具,但這種壓力測(cè)試工具通過(guò)截取正常交易的報(bào)文作為測(cè)試報(bào)文,只能代替前端發(fā)起報(bào)文,測(cè)試過(guò)程還是要依賴于主機(jī)系統(tǒng),測(cè)試過(guò)程中還是存在前述占用軟硬件和人力資源、測(cè)試不方便的問(wèn)題,而且,現(xiàn)有壓力測(cè)試工具由于是采用重放截取的報(bào)文方式進(jìn)行測(cè)試,因此不能產(chǎn)生新交易的報(bào)文,不能按照需要組織報(bào)文對(duì)新增功能進(jìn)行測(cè)試,不能充分適應(yīng)銀行系統(tǒng)前置測(cè)試的要求。
可見(jiàn),現(xiàn)有的對(duì)前置的測(cè)試方法存在占用其它系統(tǒng)軟硬件資源、測(cè)試不方便、占用過(guò)多的人力資源以及不能組織新交易報(bào)文的問(wèn)題。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種用于前置測(cè)試的方法、裝置及系統(tǒng),以解決現(xiàn)有技術(shù)中存在的占用其它系統(tǒng)軟硬件資源、測(cè)試不方便、占用過(guò)多的人力資源以及不能組織新交易報(bào)文的問(wèn)題。
為了解決上述技術(shù)問(wèn)題,本發(fā)明公開(kāi)了一種用于前置測(cè)試的方法,包括A1、預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;A2、根據(jù)所述報(bào)文生成文件生成前置交易報(bào)文;
A3、向所述前置發(fā)送所述前置交易報(bào)文;A4、接收所述前置返回前置應(yīng)答報(bào)文;A5、保存執(zhí)行日志。
優(yōu)選的,在步驟A1之后,步驟A2之前,還包括,A21、進(jìn)行環(huán)境檢查,判斷環(huán)境檢查是否成功,若是,執(zhí)行步驟A2,若否,執(zhí)行步驟A5。
優(yōu)選的,在步驟A4之后,步驟A5之前,還包括,A31、判斷向所述前置發(fā)送的交易報(bào)文數(shù)量是否達(dá)到預(yù)設(shè)值,若是,執(zhí)行步驟A5,若否,執(zhí)行步驟A2。
優(yōu)選的,在步驟A3之后,步驟A4之前,還包括,A41、接收所述前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向所述前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文。
優(yōu)選的,所述報(bào)文生成文件是交易描述文件或者交易模板文件。
本發(fā)明還提供了一種用于前置測(cè)試的裝置,包括預(yù)置單元,用于預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;生成單元,用于根據(jù)報(bào)文生成文件生成前置交易報(bào)文;發(fā)送單元,用于向所述前置發(fā)送所述前置交易報(bào)文;接收單元,用于接收所述前置返回前置應(yīng)答報(bào)文;日志單元,用于保存保存執(zhí)行日志。
優(yōu)選的,還包括,環(huán)境檢查單元,用于進(jìn)行環(huán)境檢查,并判斷環(huán)境檢查是否成功,若是,調(diào)用生成單元,若否,調(diào)用日志單元。
優(yōu)選的,還包括,報(bào)文數(shù)量判斷單元,用于判斷向所述前置發(fā)送的前置交易報(bào)文數(shù)量是否達(dá)到預(yù)設(shè)值,若是,調(diào)用日志單元,若否,調(diào)用生成單元。
優(yōu)選的,還包括,主機(jī)仿真單元,用于接收所述前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文。
本發(fā)明還提供了一種用于前置測(cè)試的系統(tǒng),包括主機(jī)仿真裝置,用于接收所述前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向所述前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文;前端仿真裝置,包括預(yù)置單元,用于預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;生成單元,用于根據(jù)報(bào)文生成文件生成前置交易報(bào)文;發(fā)送單元,用于向所述前置發(fā)送所述前置交易報(bào)文;接收單元,用于接收所述前置返回前置應(yīng)答報(bào)文;日志單元,用于保存保存執(zhí)行日志信息。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn)1、本發(fā)明采用預(yù)置的報(bào)文生成文件生成前置交易報(bào)文,不需要由前端發(fā)起前置交易報(bào)文,可以代替前端對(duì)前置進(jìn)行測(cè)試,測(cè)試過(guò)程不占用前端的軟硬件及人力資源。
2、采用由報(bào)文生成文件生成前置交易報(bào)文,只需要給出報(bào)文生成文件即可得到測(cè)試用的前置交易報(bào)文,便于組織前置交易報(bào)文;對(duì)于新的交易功能的測(cè)試,只需要給出新交易功能的報(bào)文生成文件就可以生成新交易功能的前置交易報(bào)文,便于對(duì)新功能進(jìn)行測(cè)試。
3、可以接收前置發(fā)送給主機(jī)的主機(jī)交易報(bào)文,使用預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文,代替主機(jī)發(fā)送給前置,測(cè)試過(guò)程不占用主機(jī)軟硬件及人力資源。
4、可以生成多條前置交易報(bào)文循環(huán)發(fā)送給前置,并記錄每筆交易的執(zhí)行結(jié)果,從而支持對(duì)前置進(jìn)行壓力測(cè)試。
圖1是本發(fā)明的方法實(shí)施例1流程圖;圖2是本發(fā)明的方法實(shí)施例2流程圖;圖3是本發(fā)明的方法實(shí)施例3流程圖;圖4是本發(fā)明的裝置實(shí)施例框圖;圖5是本發(fā)明的系統(tǒng)實(shí)施例框圖。
具體實(shí)施例方式
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明。
參見(jiàn)圖1,是本發(fā)明的方法實(shí)施例1流程圖,包括步驟101,預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文。
對(duì)于現(xiàn)有壓力測(cè)試工具,測(cè)試用的交易報(bào)文一般是截取正常交易時(shí)傳遞的前置交易報(bào)文,并保存起來(lái),進(jìn)行測(cè)試時(shí)重放前置交易報(bào)文,但這種方法不能組織生成新報(bào)文,無(wú)法測(cè)試新的交易,本發(fā)明預(yù)置報(bào)文生成文件,所述報(bào)文生成文件描述了組織前置交易報(bào)文所需的信息(如交易碼、帳號(hào)等要素及其數(shù)值),可以用于生成測(cè)試用交易報(bào)文,在組織報(bào)文過(guò)程中,可能還需要運(yùn)行環(huán)境中其它文件的支持(如交易數(shù)據(jù)文件或者字典文件等),當(dāng)需要測(cè)試不同交易時(shí),只需要給出新的報(bào)文生成文件,即可以得到新的前置交易報(bào)文,可以方便的組織前置交易報(bào)文,采用這種方式不需要從真實(shí)的交易系統(tǒng)中截取前置交易報(bào)文。所述報(bào)文描述文件可以由用戶編寫形成,可以保存為測(cè)試案例,并可以復(fù)用,便于進(jìn)行回歸測(cè)試。
步驟102,根據(jù)所述報(bào)文生成文件生成前置交易報(bào)文。
根據(jù)所述的報(bào)文生成文件中的信息生成前置交易報(bào)文,所述前置交易報(bào)文可以直接發(fā)送給前置。
步驟103,向前置發(fā)送前置交易報(bào)文。
可以通過(guò)調(diào)用前置的API接口,按指定通訊配置向把前置交易報(bào)文發(fā)送給前置,由前置經(jīng)過(guò)處理后形成主機(jī)交易報(bào)文發(fā)送給主機(jī),主機(jī)執(zhí)行后,返回主機(jī)應(yīng)答報(bào)文給前置,前置處理后形成前置應(yīng)答報(bào)文,發(fā)送給前置交易報(bào)文的發(fā)送者。
步驟104,接收前置返回的前置應(yīng)答報(bào)文。
前置應(yīng)答報(bào)文中包括了此筆交易的執(zhí)行結(jié)果,如是否執(zhí)行成功和結(jié)果數(shù)據(jù)等。
步驟105,保存執(zhí)行日志。
將返回前置應(yīng)答報(bào)文保存在日志文件中供查閱,同時(shí)還可以在在標(biāo)準(zhǔn)輸出設(shè)備上輸出交易成功/失敗及指定的報(bào)文中的字段信息(如余額等),方便測(cè)試人員查看執(zhí)行結(jié)果。
優(yōu)選的,還包括,進(jìn)行環(huán)境檢查,判斷環(huán)境檢查是否成功,若是,執(zhí)行步驟102,若否,執(zhí)行步驟105。
進(jìn)行測(cè)試時(shí),系統(tǒng)需要對(duì)相關(guān)運(yùn)行環(huán)境進(jìn)行檢查,例如尋找全局?jǐn)?shù)據(jù)字典文件(TRADE_DICT_EXT、TRADE_DICT_IN)等并進(jìn)行字典文件的加載,或者是其它的運(yùn)行環(huán)境配置參數(shù),如果這些環(huán)境要求不能滿足,則認(rèn)為環(huán)境沒(méi)有配置正確,不能正確執(zhí)行測(cè)試,在日志文件中記錄錯(cuò)誤信息并結(jié)束測(cè)試。全局?jǐn)?shù)據(jù)字典是一種類ini格式的文件,每一節(jié)描述一個(gè)報(bào)文字段的定義,如類型、長(zhǎng)度、精度等,可以用于輔助生成前置交易報(bào)文,該文件中對(duì)將要發(fā)起的交易報(bào)文中所有要素進(jìn)行定義。
在實(shí)際交易處理中,對(duì)于前置交易報(bào)文的安全有一定的要求,還會(huì)進(jìn)行安全環(huán)境的檢查,安全環(huán)境是以通訊節(jié)點(diǎn)為單位的,兩節(jié)點(diǎn)間可以進(jìn)行密鑰同步(有主從之分,通常是前置節(jié)點(diǎn)作為服務(wù)節(jié)點(diǎn),提供密鑰同步服務(wù)),保證各節(jié)點(diǎn)得到當(dāng)前的密鑰。所以發(fā)送報(bào)文時(shí)通常還需要對(duì)安全環(huán)境進(jìn)行檢查,并附接共享內(nèi)存,以獲得更多的安全信息參數(shù)。安全環(huán)境未配置、未初始化或者配置錯(cuò)誤等都可導(dǎo)致本步驟失敗,系統(tǒng)將進(jìn)行日志記錄供排錯(cuò)用。
優(yōu)選的,還包括,判斷向前置發(fā)送的前置交易報(bào)文數(shù)量是否達(dá)到預(yù)設(shè)值,若是,執(zhí)行步驟105,若否,執(zhí)行步驟102。
測(cè)試時(shí),可以只進(jìn)行一次交易的測(cè)試,也可以測(cè)試多次,支持壓力測(cè)試。壓力測(cè)試時(shí)可以由交易生成文件重復(fù)生成多個(gè)前置交易報(bào)文,按照某種時(shí)間間隔連續(xù)發(fā)送給前置,以測(cè)試前置在高頻率的報(bào)文壓力下的性能情況,測(cè)試時(shí)可以采用單線程進(jìn)行,也可以采用多線程并行發(fā)送報(bào)文,以更好的模擬實(shí)際使用的環(huán)境。
優(yōu)選的,還包括,接收前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文。
在實(shí)際的業(yè)務(wù)系統(tǒng)中,前置接收交易報(bào)文后,經(jīng)過(guò)處理,向主機(jī)發(fā)送輸出報(bào)文,由主機(jī)處理后,再向前置返回報(bào)文。本發(fā)明還可以代替主機(jī)接收前置發(fā)送給主機(jī)的主機(jī)交易報(bào)文,并從預(yù)先截取的報(bào)文中選擇,把需要的報(bào)文作為主機(jī)應(yīng)答報(bào)文發(fā)送給前置,從而代替主機(jī)進(jìn)行前置的測(cè)試,避免了測(cè)試過(guò)程中占用主機(jī)系統(tǒng)資源的問(wèn)題,也使測(cè)試所涉及的環(huán)境單一化,便于對(duì)測(cè)試結(jié)果的判斷。
優(yōu)選的,所述報(bào)文生成文件是交易描述文件或者交易模板文件。
對(duì)于功能測(cè)試,報(bào)文生成文件可以是交易描述文件,其中描述了交易報(bào)文中所需要的信息;也可以是交易模板文件,用于配合預(yù)置的數(shù)據(jù)文件生成多筆交易進(jìn)行壓力測(cè)試。
參見(jiàn)圖2,是本發(fā)明的方法實(shí)施例2流程圖,是進(jìn)行前置的功能測(cè)試的實(shí)例,具體包括步驟201,預(yù)置交易描述文件。
交易描述文件如下所示INM_MSG_TYPE,0200,#消息類型INM_SVR_TYPE,SA0,#服務(wù)類型INM_PROCESS_CODE,110300,#交易碼INM_CHANNEL_ID,060300,#渠道號(hào)INM_ORG_NODE_ID,3100000011,#節(jié)點(diǎn)號(hào)INM_ORG_BRANCH_ID,310280000,#機(jī)構(gòu)號(hào)INM_ORG_TERM_TYP,U,#終端號(hào)......
CURR_COD,01,#幣別......
由交易描述文件配合數(shù)據(jù)字典可以生成前置交易報(bào)文。
步驟202,檢查運(yùn)行環(huán)境。
執(zhí)行時(shí),系統(tǒng)需要對(duì)相關(guān)環(huán)境進(jìn)行檢查,如全局?jǐn)?shù)據(jù)字典(TRADE_DICT_EXT、TRADE_DICT_IN)等并進(jìn)行字典的加載,如果這些環(huán)境不能滿足,則認(rèn)為環(huán)境沒(méi)有配置正確,不能正確執(zhí)行。還需要對(duì)安全環(huán)境進(jìn)行檢查,以獲得正確的安全信息,所述安全信息可以用于對(duì)報(bào)文或者報(bào)文中的特殊字段進(jìn)行加密處理。
步驟203,判斷環(huán)境檢查是否成功,若是,執(zhí)行步驟204,若否,執(zhí)行步驟207。
如果運(yùn)行環(huán)境檢查失敗,則認(rèn)為運(yùn)行環(huán)境沒(méi)有配置正確,不能正確執(zhí)行測(cè)試,在日志中記錄本次測(cè)試的結(jié)果,結(jié)束測(cè)試;若運(yùn)行環(huán)境檢查成功,繼續(xù)執(zhí)行測(cè)試過(guò)程。
步驟204,生成前置交易報(bào)文。
根據(jù)步驟201中預(yù)置的交易描述文件,按照前置的報(bào)文格式生成前置交易報(bào)文。生成交易報(bào)文過(guò)程也可以利用前置提供的相關(guān)API接口來(lái)進(jìn)行。
步驟205,發(fā)送前置交易報(bào)文。
完成后,將利用前置提供的通訊API接口,根據(jù)本地的通訊配置,向指定的前置發(fā)送前置交易報(bào)文。前置收到后,經(jīng)過(guò)處理后形成主機(jī)交易報(bào)文,并發(fā)送給主機(jī),主機(jī)進(jìn)行交易處理后,生成主機(jī)應(yīng)答報(bào)文,發(fā)送給前置,前置經(jīng)過(guò)處理后,生成前置應(yīng)答報(bào)文,發(fā)送給前置交易報(bào)文的發(fā)送者。
步驟206,接收前置返回的前置應(yīng)答報(bào)文。
根據(jù)前置應(yīng)答報(bào)文提取出需要保存或者顯示的數(shù)據(jù)。
步驟207,記錄測(cè)試結(jié)果日志。
日志中可以包含前置通訊接口的返回結(jié)果、接收到結(jié)果報(bào)文、出錯(cuò)信息等信息。
作為對(duì)本實(shí)施例的一個(gè)擴(kuò)展,前置交易報(bào)文的生成也可以采用截取實(shí)際交易系統(tǒng)的真實(shí)交易的報(bào)文并重放的方式。
參見(jiàn)圖3,是本發(fā)明的方法實(shí)施例3流程圖,是對(duì)前置進(jìn)行壓力測(cè)試的實(shí)施例,在下面的描述中,和實(shí)施例2中重復(fù)的步驟不再贅述,實(shí)施例3具體包括步驟301,預(yù)置交易模板文件和數(shù)據(jù)文件。
交易模板文件用戶生成交易報(bào)文,并可以根據(jù)數(shù)據(jù)文件生成多個(gè)前置交易報(bào)文,便于對(duì)前置進(jìn)行壓力測(cè)試。
交易模板文件舉例如下系統(tǒng)參數(shù)文件system.ini#系統(tǒng)參數(shù)文件,名稱不可改變#放置于環(huán)境變量LOADDIR之下文件內(nèi)容格式[SYSTEM]#系統(tǒng)參數(shù)區(qū)
FRONTID=000000000x #前置標(biāo)識(shí)號(hào),x為1-9的任何數(shù)字ACENODEID=?????????? #前端標(biāo)識(shí)號(hào),?為1-9的任何數(shù)字FMTDIR=value#數(shù)據(jù)格式所在最后一級(jí)目錄名包括最后的/DATDIR=value#數(shù)據(jù)文件所在最后一級(jí)目錄名包括最后的/LOGDIR=value#日志文件所在最后一級(jí)目錄名包括最后的/LOGFILE=value #日志文件名稱TXFILENAME=value#定義交易屬性文件的文件名,不包含路徑SERVICEGTN=value#穿透交易服務(wù)名SERVICENGT=value#非穿透NORMAL交易服務(wù)名SERVICEMIMO=value#非穿透MIMO交易服務(wù)名EBCDIC=va1ue #EBCDIC轉(zhuǎn)碼標(biāo)志TIMEUNIT_D=value#明細(xì)統(tǒng)計(jì)時(shí)間單位value為表示微秒的倍數(shù)TIMEUNIT_S=value#匯總統(tǒng)計(jì)時(shí)間單位va1ue為表示微秒的倍數(shù)TPCONSTANT=value#TUXEDO連接方式#0短連接(默認(rèn))#1長(zhǎng)連接[COMMON]#公共參數(shù)區(qū)DEFCONVNUM=value#默認(rèn)交易會(huì)話次數(shù)#有效值為數(shù)字DEFCONVSTEP=value#默認(rèn)交易會(huì)話步驟#有效值為數(shù)字DEFALIGN=L|R #默認(rèn)對(duì)齊方式#該屬性可用的取值及含義如下#L左對(duì)齊(默認(rèn))
#R右對(duì)齊DEFFILLCHAR=value #默認(rèn)填充字符#該屬性應(yīng)設(shè)置十進(jìn)制表示的字符的ASCII碼。
#默認(rèn)值為空格(區(qū)別碼制)DEFPARAFLAG=value #默認(rèn)交易報(bào)文參數(shù)化處理標(biāo)志#1 需要參數(shù)化#0 無(wú)需參數(shù)化(默認(rèn))[TELLID] #柜員號(hào)參數(shù)區(qū)CHGTELLER=value#柜員輪換標(biāo)志#1輪換#0不輪換TELLID_x=value #柜員號(hào)#其中的x為柜員的序號(hào),有效值為自然數(shù)。
步驟302,檢查運(yùn)行環(huán)境。
步驟303,判斷環(huán)境檢查是否成功,若是,執(zhí)行步驟304,若否,執(zhí)行步驟309,記錄錯(cuò)誤信息。
步驟304,生成前置交易報(bào)文。
根據(jù)交易模板文件和數(shù)據(jù)文件生成前置交易報(bào)文。
步驟305,調(diào)用前置接口發(fā)送前置交易報(bào)文。
發(fā)送報(bào)文后,可以暫停預(yù)定的時(shí)間間隔。
步驟306,接收前置發(fā)送給主機(jī)的主機(jī)交易報(bào)文,根據(jù)接收到的報(bào)文,從預(yù)置的報(bào)文中選出一個(gè)作為主機(jī)應(yīng)答報(bào)文,代替主機(jī)發(fā)送給前置。本步驟在對(duì)業(yè)務(wù)數(shù)據(jù)真實(shí)性要求不高時(shí)可以完全替代真實(shí)主機(jī)進(jìn)行報(bào)文的處理。
本步驟中發(fā)送給前置的報(bào)文可以截取自實(shí)際系統(tǒng)中主機(jī)對(duì)于某指定交易的主機(jī)應(yīng)答報(bào)文。在本步驟中,該條主機(jī)應(yīng)答報(bào)文對(duì)于指定交易的返回?cái)?shù)據(jù)是固定的,并不會(huì)因?yàn)榻灰讛?shù)據(jù)的變化而產(chǎn)生變化,故一般只做為壓力測(cè)試的工具使用。
步驟307,接收前置返回的前置應(yīng)答報(bào)文,記錄本次交易的執(zhí)行結(jié)果。
可以從調(diào)用的前置API接口的返回參數(shù)中判斷交易的執(zhí)行情況,若成功,可以接收到結(jié)果報(bào)文,若失敗,可以接收到錯(cuò)誤信息。
步驟308,判斷發(fā)送給前置的交易報(bào)文是否達(dá)到預(yù)設(shè)的數(shù)量,若達(dá)到,執(zhí)行步驟309,若否,執(zhí)行步驟304,生成下一個(gè)交易報(bào)文,并重復(fù)生成前置交易報(bào)文。
步驟309,記錄測(cè)試日志。
測(cè)試執(zhí)行完畢后,該進(jìn)程將本進(jìn)程所執(zhí)行的交易數(shù)目、成功/失敗數(shù)、最大/最小耗時(shí)、平均耗時(shí)、實(shí)際并發(fā)能力等信息進(jìn)行記錄,測(cè)試人員可以通過(guò)查看記錄日志統(tǒng)計(jì)壓力測(cè)試情況。
參見(jiàn)圖4,是本發(fā)明的裝置實(shí)施例框圖,包括預(yù)置單元401,用于預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;生成單元402,用于根據(jù)報(bào)文生成文件生成前置交易報(bào)文;發(fā)送單元403,用于向前置發(fā)送前置交易報(bào)文;接收單元404,用于接收前置返回前置應(yīng)答報(bào)文;日志單元405,用于保存執(zhí)行日志。
預(yù)置單元401預(yù)置報(bào)文生成文件,生成單元402根據(jù)所述報(bào)文生成文件生成前置交易報(bào)文,由發(fā)送單元403調(diào)用前置的接口發(fā)送給前置,前置處理后返回前置應(yīng)答報(bào)文,由接收單元404接收,日志單元405保存當(dāng)前的執(zhí)行日志。
優(yōu)選的,還包括,環(huán)境檢查單元406,用于進(jìn)行環(huán)境檢查,并判斷環(huán)境檢查是否成功,若是,調(diào)用生成單元,若否,調(diào)用日志單元。
進(jìn)行測(cè)試時(shí),系統(tǒng)需要對(duì)相關(guān)運(yùn)行環(huán)境進(jìn)行檢查,如果環(huán)境要求不能滿足,則認(rèn)為環(huán)境沒(méi)有配置正確,不能正確執(zhí)行測(cè)試,在日志文件中記錄錯(cuò)誤信息并結(jié)束測(cè)試。
在實(shí)際交易處理中,對(duì)于前置交易報(bào)文的安全有一定的要求,所以發(fā)送報(bào)文時(shí)通常還需要對(duì)安全環(huán)境進(jìn)行檢查,并連接共享內(nèi)存,以獲得更多的安全信息參數(shù)。安全環(huán)境未配置、未初始化或者配置錯(cuò)誤等都可導(dǎo)致本步驟失敗,系統(tǒng)將進(jìn)行日志記錄供排錯(cuò)用。
優(yōu)選的,還包括,報(bào)文數(shù)量判斷單元407,用于判斷向前置發(fā)送的前置交易報(bào)文數(shù)量是否達(dá)到預(yù)設(shè)值,若是,調(diào)用日志單元,若否,調(diào)用生成單元。
測(cè)試時(shí),可以只進(jìn)行一次交易的測(cè)試,也可以測(cè)試多次,支持壓力測(cè)試。壓力測(cè)試時(shí)可以有交易生成文件重復(fù)生成多個(gè)前置交易報(bào)文,按照某種時(shí)間間隔連續(xù)發(fā)送給前置,以測(cè)試前置在高頻率的報(bào)文壓力下的性能情況,測(cè)試時(shí)可以采用單線程進(jìn)行,也可以采用多線程并行發(fā)送報(bào)文,以更好的模擬實(shí)際使用的環(huán)境。
優(yōu)選的,還包括,主機(jī)仿真單元408,用于接收前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文。
主機(jī)仿真單元408可以代替主機(jī)接收前置發(fā)送給主機(jī)的主機(jī)交易報(bào)文,并從預(yù)先截取的報(bào)文中選擇,把需要的報(bào)文作為主機(jī)應(yīng)答報(bào)文發(fā)送給前置,從而代替主機(jī)進(jìn)行前置的測(cè)試。
主機(jī)仿真單元408還可以自由配置每筆交易的響應(yīng)間隔時(shí)間,調(diào)整最大隨機(jī)間隔時(shí)間及隨機(jī)交易筆數(shù),還可以進(jìn)行響應(yīng)包及響應(yīng)包描述文件的互轉(zhuǎn),可以從網(wǎng)關(guān)日志及前置流水中獲取響應(yīng)包。
主機(jī)仿真單元408還可以包括帳表文件生成器。帳表生成器將主要依據(jù)提供現(xiàn)有系統(tǒng)產(chǎn)生實(shí)際報(bào)表,并根據(jù)實(shí)際使用者的機(jī)構(gòu)列表生成新的報(bào)表文件。
主機(jī)仿真單元408可以提供普通TCP/IP(網(wǎng)絡(luò)協(xié)議集)協(xié)議通訊版本及TUXEDO(一種中間件)通訊中間件版本。
主機(jī)仿真單元408系統(tǒng)同時(shí)提供配套的交易數(shù)據(jù)顯示、修改工具,以及監(jiān)控、管理工具、配置生成等工具。既可以截取真實(shí)交易系統(tǒng)中的主機(jī)交易報(bào)文數(shù)據(jù)包,也提供手工配置交易的主機(jī)應(yīng)答報(bào)文的方法。
參見(jiàn)圖5,是本發(fā)明的系統(tǒng)實(shí)施例框圖,包括主機(jī)仿真裝置501,用于接收前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文。
前端仿真裝置502,包括
預(yù)置單元5021,用于預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;生成單元5022,用于根據(jù)報(bào)文生成文件生成前置交易報(bào)文;發(fā)送單元5023,用于向前置發(fā)送前置交易報(bào)文;接收單元5024,用于接收前置返回前置應(yīng)答報(bào)文;日志單元5025,用于保存保存執(zhí)行日志信息。
前置503,用于實(shí)現(xiàn)前端、主機(jī)之間的數(shù)據(jù)交換和交易控制。
在本實(shí)施例中,前置503被測(cè)試的系統(tǒng),分別采用主機(jī)仿真裝置501和前端仿真裝置502代替真實(shí)前端和主機(jī),前置503用于接收前端仿真裝置502產(chǎn)生的前置交易報(bào)文,處理后,生成主機(jī)交易報(bào)文并發(fā)送給主機(jī)仿真裝置501,主機(jī)仿真裝置501接收到主機(jī)交易報(bào)文后,選擇預(yù)設(shè)的報(bào)文作為主機(jī)應(yīng)答報(bào)文發(fā)送給前置503,經(jīng)過(guò)處理后,生成前置應(yīng)答報(bào)文并發(fā)送給前端仿真裝置502。
在本實(shí)施例中,前端仿真裝置502與主機(jī)仿真裝置501可以同時(shí)使用,也可以分別使用。前端仿真裝置502與主機(jī)仿真裝置501共同使用可以對(duì)前置進(jìn)行壓力測(cè)試。
以上對(duì)本發(fā)明所提供的一種用于前置測(cè)試的方法、裝置及系統(tǒng)進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
權(quán)利要求
1.一種用于前置測(cè)試的方法,其特征在于,包括A1、預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;A2、根據(jù)所述報(bào)文生成文件生成前置交易報(bào)文;A3、向所述前置發(fā)送所述前置交易報(bào)文;A4、接收所述前置返回前置應(yīng)答報(bào)文;A5、保存執(zhí)行日志。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在步驟A1之后,步驟A2之前,還包括,A21、進(jìn)行環(huán)境檢查,判斷環(huán)境檢查是否成功,若是,執(zhí)行步驟A2,若否,執(zhí)行步驟A5。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,在步驟A4之后,步驟A5之前,還包括,A31、判斷向所述前置發(fā)送的交易報(bào)文數(shù)量是否達(dá)到預(yù)設(shè)值,若是,執(zhí)行步驟A5,若否,執(zhí)行步驟A2。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,在步驟A3之后,步驟A4之前,還包括,A41、接收所述前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向所述前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文。
5.根據(jù)權(quán)利要求1、2、3或4所述的方法,其特征在于,所述報(bào)文生成文件是交易描述文件或者交易模板文件。
6.一種用于前置測(cè)試的裝置,其特征在于,包括預(yù)置單元,用于預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;生成單元,用于根據(jù)報(bào)文生成文件生成前置交易報(bào)文;發(fā)送單元,用于向所述前置發(fā)送所述前置交易報(bào)文;接收單元,用于接收所述前置返回前置應(yīng)答報(bào)文;日志單元,用于保存保存執(zhí)行日志。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括,環(huán)境檢查單元,用于進(jìn)行環(huán)境檢查,并判斷環(huán)境檢查是否成功,若是,調(diào)用生成單元,若否,調(diào)用日志單元。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括,報(bào)文數(shù)量判斷單元,用于判斷向所述前置發(fā)送的前置交易報(bào)文數(shù)量是否達(dá)到預(yù)設(shè)值,若是,調(diào)用日志單元,若否,調(diào)用生成單元。
9.根據(jù)權(quán)利要求6、7或8所述的裝置,其特征在于,還包括,主機(jī)仿真單元,用于接收所述前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文。
10.一種用于前置測(cè)試的系統(tǒng),其特征在于,包括,主機(jī)仿真裝置,用于接收所述前置向主機(jī)發(fā)出的主機(jī)交易報(bào)文,向所述前置返回預(yù)設(shè)的主機(jī)應(yīng)答報(bào)文;前端仿真裝置,包括預(yù)置單元,用于預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;生成單元,用于根據(jù)報(bào)文生成文件生成前置交易報(bào)文;發(fā)送單元,用于向所述前置發(fā)送所述前置交易報(bào)文;接收單元,用于接收所述前置返回前置應(yīng)答報(bào)文;日志單元,用于保存保存執(zhí)行日志信息。
全文摘要
本發(fā)明公開(kāi)了一種用于前置測(cè)試的方法、裝置及系統(tǒng),其中所述方法包括下列步驟預(yù)置報(bào)文生成文件,所述報(bào)文生成文件用于生成前置交易報(bào)文;根據(jù)所述報(bào)文生成文件生成前置交易報(bào)文;向所述前置發(fā)送所述前置交易報(bào)文;接收所述前置返回前置應(yīng)答報(bào)文;保存執(zhí)行日志。本發(fā)明可以代替前端對(duì)前置進(jìn)行測(cè)試,測(cè)試過(guò)程不占用前端的軟硬件及人力資源,便于組織前置交易報(bào)文,便于對(duì)新功能進(jìn)行測(cè)試,支持對(duì)前置進(jìn)行壓力測(cè)試,可以不占用主機(jī)資源。
文檔編號(hào)G07F19/00GK1996374SQ20061017322
公開(kāi)日2007年7月11日 申請(qǐng)日期2006年12月30日 優(yōu)先權(quán)日2006年12月30日
發(fā)明者林志農(nóng), 肖魯川, 王迎春, 鄭煒杰, 楊芬, 吳煒?biāo)?申請(qǐng)人:中國(guó)建設(shè)銀行股份有限公司