專利名稱:用于測試業(yè)務(wù)處理模塊的測試系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機(jī)技術(shù),尤其涉及用于測試業(yè)務(wù)處理模塊的測試系統(tǒng)和測試方法。
背景技術(shù):
基于客戶信息控制系統(tǒng)(CICS)的應(yīng)用系統(tǒng)通常包括多個業(yè)務(wù)處理模塊,在這種應(yīng)用系統(tǒng)的開發(fā)過程中,通常獨(dú)立地開發(fā)各個業(yè)務(wù)處理模塊。由于各個業(yè)務(wù)處理模塊的開發(fā)進(jìn)度不相同,所以為了對已經(jīng)開發(fā)好的業(yè)務(wù)處理模塊進(jìn)行測試,則需要組建測試系統(tǒng)。這種測試系統(tǒng)用于生成用來記載交易數(shù)據(jù)的測試報文并將該測試報文發(fā)送到業(yè)務(wù)處理模塊,業(yè)務(wù)處理模塊接收測試報文并利用測試報文中記載的交易數(shù)據(jù)來執(zhí)行業(yè)務(wù)操作以檢驗(yàn)業(yè)務(wù)處理模塊的運(yùn)行情況。這種測試系統(tǒng)存在的問題是:由于各個業(yè)務(wù)處理模塊需要處理不同的交易數(shù)據(jù)使得向不同的業(yè)務(wù)處理模塊發(fā)送的測試報文不相同,而且由于報文發(fā)送模塊生成的測試報文的字符編碼可能與各個業(yè)務(wù)處理模塊能處理的字符編碼不相同使得需要為各個業(yè)務(wù)處理模塊配備能夠生成符合業(yè)務(wù)處理模塊的字符編碼要求的測試報文的報文發(fā)送模塊,因此,需要為每個業(yè)務(wù)處理模塊開發(fā)一個配套的測試系統(tǒng),造成重復(fù)開發(fā),導(dǎo)致測試成本增大。
發(fā)明內(nèi)容
本發(fā)明提供了用于測試業(yè)務(wù)處理模塊的測試系統(tǒng)和測試方法,用來解決現(xiàn)有技術(shù)中需要為每個業(yè)務(wù)處理模塊開發(fā)一個配套的測試系統(tǒng)的問題。為了解決上述問題,本發(fā)明提供了一種用于測試業(yè)務(wù)處理模塊的測試系統(tǒng),所述測試系統(tǒng)生成測試報文并提供給所述業(yè)務(wù)處理模塊進(jìn)行業(yè)務(wù)處理,所述測試系統(tǒng)包括:信息輸入模塊、存儲模塊、報文處理模塊、轉(zhuǎn)碼模塊以及通信模塊,其中,所述存儲模塊用于存儲記載有所述業(yè)務(wù)處理模塊對測試報文的格式要求的第一報文格式文檔;所述信息輸入模塊用于接收用戶輸入的交易數(shù)據(jù)并將所述交易數(shù)據(jù)發(fā)送到所述報文處理模塊;所述報文處理模塊用于根據(jù)所述存儲模塊所存儲的第一報文格式文檔和從所述信息輸入模塊接收的交易數(shù)據(jù)生成符合所述第一報文格式文檔中記載的格式要求的測試報文,然后將所述測試報文發(fā)送到所述轉(zhuǎn)碼模塊;所述轉(zhuǎn)碼模塊用于從所述報文處理模塊接收所述測試報文,并對所述測試報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的測試報文,然后將所述經(jīng)轉(zhuǎn)碼的測試報文發(fā)送到所述通信模塊,其中,所述經(jīng)轉(zhuǎn)碼的測試報文的字符編碼為所述業(yè)務(wù)處理模塊能處理的字符編碼;所述通信模塊用于將所述經(jīng)轉(zhuǎn)碼的測試報文轉(zhuǎn)發(fā)到所述業(yè)務(wù)處理模塊。 優(yōu)選地,所述存儲模塊還用于存儲記載有所述業(yè)務(wù)處理模塊對反饋報文的格式要求的第二報文格式文檔;所述通信模塊還用于將所述業(yè)務(wù)處理模塊發(fā)來的反饋所述經(jīng)轉(zhuǎn)碼的測試報文的處理結(jié)果的反饋報文轉(zhuǎn)發(fā)到所述轉(zhuǎn)碼模塊;所述轉(zhuǎn)碼模塊還用于對所述通信模塊轉(zhuǎn)發(fā)的反饋報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的反饋報文,然后將所述經(jīng)轉(zhuǎn)碼的反饋報文發(fā)送到所述報文處理模塊,其中,所述經(jīng)轉(zhuǎn)碼的反饋報文的字符編碼為所述報文處理模塊能處理的字符編碼;所述報文處理模塊還用于根據(jù)所述存儲模塊所存儲的第二報文格式文檔和從所述轉(zhuǎn)碼模塊接收的轉(zhuǎn)碼后的反饋報文生成與所述經(jīng)轉(zhuǎn)碼的反饋報文相對應(yīng)的實(shí)體對象。優(yōu)選地,所述報文處理模塊包括:對象處理單元和測試報文處理單元,其中,所述對象處理單元用于按照所述第一報文格式文檔中記載的格式要求生成與所述測試報文相對應(yīng)的測試報文文檔對象,所述測試報文文檔對象包括多個元素節(jié)點(diǎn),每個元素節(jié)點(diǎn)均與所述測試報文中的一個報文域?qū)?yīng),每個元素節(jié)點(diǎn)的節(jié)點(diǎn)屬性均與這個元素節(jié)點(diǎn)對應(yīng)的報文域的域?qū)傩韵嗤?;所述測試報文處理單元用于將所述測試報文文檔對象中每個元素節(jié)點(diǎn)的值賦值為所述交易數(shù)據(jù)中相應(yīng)的數(shù)據(jù)項(xiàng)的值并基于已經(jīng)用元素節(jié)點(diǎn)記載所述交易數(shù)據(jù)中全部數(shù)據(jù)項(xiàng)的測試報文文檔對象來生成所述測試報文。優(yōu)選地,所述報文處理模塊包括:對象處理單元和測試報文處理單元,其中,所述對象處理單元用于將所述經(jīng)轉(zhuǎn)碼的反饋報文轉(zhuǎn)換成反饋報文文檔對象,并且按照所述第二報文格式文檔中記載的格式要求生成與所述經(jīng)轉(zhuǎn)碼的反饋報文相對應(yīng)的實(shí)體對象,所述實(shí)體對象包括多個成員變量,每個成員變量均與所述經(jīng)轉(zhuǎn)碼的反饋報文中的一個報文域?qū)?yīng),每個成員變 量的成員變量屬性均與這個成員變量對應(yīng)的報文域的域?qū)傩韵嗤?;所述測試報文處理單元用于將所述實(shí)體對象中每個成員變量的值賦值為所述反饋報文文檔對象中的相應(yīng)的元素節(jié)點(diǎn)的值。優(yōu)選地,所述測試報文包括多個報文域,所述第一報文格式文檔規(guī)定了各個報文域的數(shù)據(jù)長度;所述轉(zhuǎn)碼模塊包括報文域轉(zhuǎn)碼單元和報文合成單元,所述報文域轉(zhuǎn)碼單元用于:將所述報文域的字符編碼轉(zhuǎn)換成擴(kuò)充的二進(jìn)制編碼的十進(jìn)制交換碼以生成臨時報文域,然后,將所述臨時報文域占用的字符數(shù)和與所述臨時報文域?qū)?yīng)的報文域在所述第一報文格式文檔中被規(guī)定的數(shù)據(jù)長度進(jìn)行比較,如果所述字符數(shù)小于等于所述數(shù)據(jù)長度,則在所述報文域的字符編碼之前或之后補(bǔ)充個數(shù)為所述數(shù)據(jù)長度減去所述字符數(shù)的指定的填充字符以組成經(jīng)轉(zhuǎn)碼的報文域;如果所述字符數(shù)大于所述數(shù)據(jù)長度,則查找出所述臨時報文域中的最后一個漢字,并將所述漢字的字符編碼的最后兩個字符替換為“0F”以生成經(jīng)轉(zhuǎn)碼的報文域;所述報文域合成單元用于將由所述報文域轉(zhuǎn)碼單元生成的所述經(jīng)轉(zhuǎn)碼的報文域組合成所述經(jīng)轉(zhuǎn)碼的測試報文。優(yōu)選地,所述測試系統(tǒng)還包括:顯示模塊,其用于生成供用戶輸入所述交易數(shù)據(jù)的信息輸入界面。優(yōu)選地,所述顯示模塊還用于從所述報文處理模塊獲取實(shí)體對象并將所述實(shí)體對象整合到信息顯示界面以向用戶展示測試結(jié)果。
本發(fā)明還提供了一種用于測試業(yè)務(wù)處理模塊的測試方法,用于生成測試報文并提供給所述業(yè)務(wù)處理模塊進(jìn)行業(yè)務(wù)處理,所述測試方法包括:存儲記載有所述業(yè)務(wù)處理模塊對測試報文的格式要求的第一報文格式文檔;接收用戶輸入的交易數(shù)據(jù);根據(jù)存儲的所述第一報文格式文檔和接收的所述交易數(shù)據(jù)生成符合所述第一報文格式文檔中記載的格式要求的測試報文;對所述測試報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的測試報文,其中,所述經(jīng)轉(zhuǎn)碼的測試報文的字符編碼為所述業(yè)務(wù)處理模塊能處理的字符編碼;將所述經(jīng)轉(zhuǎn)碼的測試報文發(fā)送到業(yè)務(wù)處理模塊。優(yōu)選地,所述測試方法還包括:存儲記載有所述業(yè)務(wù)處理模塊對反饋報文的格式要求的第二報文格式文檔;接收所述業(yè)務(wù)處理模塊發(fā)來的反饋所述經(jīng)轉(zhuǎn)碼的測試報文的處理結(jié)果的反饋報文;對所述反饋報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的反饋報文,其中,所述經(jīng)轉(zhuǎn)碼的反饋報文的字符編碼為所述報文處理模塊能處理的字符編碼;根據(jù)所述第二報 文格式文檔和所述經(jīng)轉(zhuǎn)碼的反饋報文生成與所述經(jīng)轉(zhuǎn)碼的反饋報文相對應(yīng)的實(shí)體對象。優(yōu)選地,所述測試方法還包括:將所述實(shí)體對象整合到信息顯示界面以向用戶展示測試結(jié)果。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:本發(fā)明的測試方法和測試系統(tǒng)能夠適應(yīng)不同的業(yè)務(wù)處理模塊對格式和字符編碼的要求,避免了重復(fù)開發(fā),節(jié)約了測試成本。
圖1是本發(fā)明實(shí)施例的用于測試業(yè)務(wù)處理模塊的測試系統(tǒng)的結(jié)構(gòu)圖;圖2是圖1的測試系統(tǒng)的報文處理模塊的結(jié)構(gòu)圖;圖3是圖1的測試系統(tǒng)的轉(zhuǎn)碼模塊的結(jié)構(gòu)圖;圖4是本發(fā)明實(shí)施例的用于測試業(yè)務(wù)處理模塊的測試方法的流程圖;圖5是本發(fā)明另一實(shí)施例的用于測試業(yè)務(wù)處理模塊的測試方法的流程圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施例對本發(fā)明作進(jìn)一步詳細(xì)描述,但不作為對本發(fā)明的限定。圖1是本發(fā)明實(shí)施例的用于測試業(yè)務(wù)處理模塊的測試系統(tǒng)的結(jié)構(gòu)圖,如圖1所示,測試系統(tǒng)100可以包括:信息輸入模塊101、報文處理模塊102、轉(zhuǎn)碼模塊103、通信模塊104以及存儲模塊106,測試系統(tǒng)100可以生成測試報文并提供給業(yè)務(wù)處理模塊105進(jìn)行業(yè)務(wù)處理,其中,存儲模塊106用于存儲記載有業(yè)務(wù)處理模塊105對測試報文的格式要求的第一報文格式文檔。測試報文包括多個報文域,每個報文域記錄一條交易數(shù)據(jù),每條交易數(shù)據(jù)包括多個數(shù)據(jù)項(xiàng),例如一條交易數(shù)據(jù)可以包括賬號、交易金額等數(shù)據(jù)項(xiàng)。第一報文格式文檔可以記載報文域記錄的交易數(shù)據(jù)的各個數(shù)據(jù)項(xiàng)的數(shù)據(jù)類型、數(shù)據(jù)長度等屬性??梢灶A(yù)先存儲第一報文格式文檔。類似地,存儲模塊106還用于存儲記載有業(yè)務(wù)處理模塊105對反饋報文的格式要求的第二報文格式文檔。信息輸入模塊101用于接收用戶輸入的交易數(shù)據(jù)并將交易數(shù)據(jù)發(fā)送到報文處理模塊102 ;報文處理模塊102用于根據(jù)存儲模塊106所存儲的第一報文格式文檔和從信息輸入模塊101接收的交易數(shù)據(jù)生成符合第一報文格式文檔中記載的格式要求的測試報文,然后將所述測試報文發(fā)送到轉(zhuǎn)碼模塊102,還用于根據(jù)存儲模塊106所存儲的第二報文格式文檔和從轉(zhuǎn)碼模塊102接收到的經(jīng)轉(zhuǎn)碼的反饋報文生成與經(jīng)轉(zhuǎn)碼的反饋報文對應(yīng)的實(shí)體對象。轉(zhuǎn)碼模塊103用于從報文處理模塊102接收測試報文,并對接收到的測試報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的測試報文,然后將經(jīng)轉(zhuǎn)碼的測試報文發(fā)送到通信模塊104,其中,經(jīng)轉(zhuǎn)碼的測試報文的字符編碼為業(yè)務(wù)處理模塊105能處理的字符編碼;轉(zhuǎn)碼模塊103還用于對通信模塊104轉(zhuǎn)發(fā)的反饋報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的反饋報文,然后將經(jīng)轉(zhuǎn)碼的反饋報文發(fā)送到報文處理模塊102,其中,所述經(jīng)轉(zhuǎn)碼的反饋報文的字符編碼為報文處理模塊102能處理的字符編碼。通信模塊104用于將經(jīng)轉(zhuǎn)碼的測試報文轉(zhuǎn)發(fā)到業(yè)務(wù)處理模塊105 ;還用于將業(yè)務(wù)處理模塊105發(fā)來的反饋經(jīng)轉(zhuǎn)碼的測試報文的處理結(jié)果的反饋報文轉(zhuǎn)發(fā)到轉(zhuǎn)碼模塊103。通信模塊104可以利用TCP/IP (傳輸控制協(xié)議/因特網(wǎng)協(xié)議)或者客戶信息控制系統(tǒng)中的C0MMAREA (公共通信區(qū))實(shí)現(xiàn)報文的轉(zhuǎn)發(fā)。業(yè)務(wù)處理模塊105可以利用通信模塊104轉(zhuǎn)發(fā)的經(jīng)轉(zhuǎn)碼的測試報文進(jìn)行業(yè)務(wù)處理,還可以將業(yè)務(wù)處理的結(jié)果通過反饋報文反饋到通信模塊104。業(yè)務(wù)處理模塊105可以是基于客戶信息控制系統(tǒng)的應(yīng)用系統(tǒng)。作為優(yōu)選,本實(shí)施例的測試系統(tǒng)還可以包括:顯示模塊106,其用于生成供用戶輸入交易數(shù)據(jù)的信息輸入界面,還用于從報文處理模塊102獲取實(shí)體對象并將實(shí)體對象整合到信息顯示界面以向用戶展示測試結(jié)`果。通過顯示模塊106可以供用戶方便地輸入交易數(shù)據(jù)并且可以直觀地向用戶展示測試結(jié)果。本實(shí)施例的測試系統(tǒng)根據(jù)記載有對測試報文的格式要求的第一報文格式文檔和用戶輸入的交易數(shù)據(jù)來生成并發(fā)送符合業(yè)務(wù)處理模塊所要求的格式和字符編碼的測試報文使業(yè)務(wù)處理模塊進(jìn)行相應(yīng)的業(yè)務(wù)處理,實(shí)現(xiàn)了對業(yè)務(wù)處理模塊的測試。所述測試系統(tǒng)能夠利用報文格式文檔方便地規(guī)定測試報文的格式并實(shí)現(xiàn)了對測試報文的字符編碼轉(zhuǎn)換,解決了現(xiàn)有技術(shù)中為不同業(yè)務(wù)處理模塊配置不同測試系統(tǒng)問題。圖2是圖1的測試系統(tǒng)的報文處理模塊的結(jié)構(gòu)圖,如圖2所示,報文處理模塊102可以包括對象處理單元201和測試報文處理單元202。本實(shí)施例的測試報文為定長域CICS報文,報文格式文檔是XML (可擴(kuò)展標(biāo)記語言)文檔。第一報文格式文檔中記載的格式要求規(guī)定測試報文的各個報文域的數(shù)據(jù)類型、數(shù)據(jù)長度等屬性(在下文中簡稱為“域?qū)傩浴?。對象處理單元201用于按照第一報文格式文檔中記載的格式要求生成與測試報文相對應(yīng)的測試報文文檔對象,測試報文文檔對象包括多個元素節(jié)點(diǎn),每個元素節(jié)點(diǎn)均與測試報文中的一個報文域?qū)?yīng),并且每個元素節(jié)點(diǎn)的數(shù)據(jù)類型、數(shù)據(jù)長度等屬性(在下文中簡稱“節(jié)點(diǎn)屬性”)均與這個元素節(jié)點(diǎn)對應(yīng)的報文域的域?qū)傩韵嗤?,?具有相同的數(shù)據(jù)類型和數(shù)據(jù)長度等;對象處理單元201還用于將經(jīng)轉(zhuǎn)碼的反饋報文轉(zhuǎn)換成反饋報文文檔對象,并且按照第二報文格式文檔中記載的格式要求生成與經(jīng)轉(zhuǎn)碼的反饋報文相對應(yīng)的實(shí)體對象,實(shí)體對象包括多個成員變量,每個成員變量均與經(jīng)轉(zhuǎn)碼的反饋報文中的一個報文域?qū)?yīng),每個成員變量的數(shù)據(jù)類型、數(shù)據(jù)長度等屬性(在下文中簡稱“成員變量屬性”)均與這個成員變量對應(yīng)的報文域的域?qū)傩韵嗤?,?具有相同的數(shù)據(jù)類型和數(shù)據(jù)長度等屬性。測試報文處理單元202用于將測試報文文檔對象中每個元素節(jié)點(diǎn)的值賦值為交易數(shù)據(jù)中相應(yīng)的數(shù)據(jù)項(xiàng)的值并基于已經(jīng)用元素節(jié)點(diǎn)記載所述交易數(shù)據(jù)中全部數(shù)據(jù)項(xiàng)的測試報文文檔對象來利用D0M4J (Java語言對象關(guān)系模型)生成測試報文,還用于將實(shí)體對象中每個成員變量的值賦值為反饋報文文檔對象中的相應(yīng)的元素節(jié)點(diǎn)的值。通過上述處理可以通過配置第一報文格式或第二報文格式文檔來生成不同的測試報文或解析不同的反饋報文,以滿足業(yè)務(wù)處理模塊對測試報文的格式要求。在本實(shí)施例中,由于報文處理模塊102采用GBK (漢字內(nèi)碼擴(kuò)展規(guī)范)字符編碼或UTF8 (八位統(tǒng)一碼轉(zhuǎn)換格式)字符編碼(由于GBK字符編碼是一種特殊的UTF8字符編碼,所以在下文中以報文處理模塊102采用GBK字符編碼為例進(jìn)行說明)而業(yè)務(wù)數(shù)據(jù)處理模塊105采用的字符編碼是EBCDIC (擴(kuò)充的二進(jìn)制編碼的十進(jìn)制交換碼),所以必須要對發(fā)送到業(yè)務(wù)數(shù)據(jù)處理模塊105的測試報文以及從業(yè)務(wù)數(shù)據(jù)處理模塊105接收到的反饋報文進(jìn)行字符編碼轉(zhuǎn)換,以便報文處理模塊102和業(yè)務(wù)處理模塊105能夠正確地識別所接收到的報文。圖3是圖1的測試系統(tǒng)的轉(zhuǎn)碼模塊的結(jié)構(gòu)圖,如圖3所示,轉(zhuǎn)碼模塊103包括報文域轉(zhuǎn)碼單元301和報文合成單元302。第一報文格式文檔規(guī)定了測試報文的各個報文域的數(shù)據(jù)長度(即該報文域占用的字符的個數(shù))。報文域轉(zhuǎn)碼單元301用于對測試報文的報文域進(jìn)行字符編碼轉(zhuǎn)換操作:將報文域的字符編碼從GBK字符編碼轉(zhuǎn)換成EBCDIC字符編碼以生成臨時報文域,可以調(diào)用現(xiàn)有的轉(zhuǎn)碼組件來實(shí)現(xiàn)報文域字符編碼的轉(zhuǎn)換,然后,將臨時報文域占用的字符數(shù)LI與對應(yīng)報文域在第一報文格式文檔中被規(guī)定的數(shù)據(jù)長度L2進(jìn)行比較:如果LI小于等于L2,則在報文域的字符編碼之前或之后補(bǔ)充L2-L1 (從L2中減去LI)個空格(一個空格占一個字符)以組成轉(zhuǎn)碼后的報文域,可選擇地,可以用除空格以外的指定的填充字符替換上述空 格來對字符編碼進(jìn)行上述補(bǔ)充,其中,一個填充字符與一個空格在存儲器中占用的比特(bit)相同;如果LI大于L2,則查找出臨時報文域中的最后一個漢字,并將這個漢字的ASCII (美國信息交換標(biāo)準(zhǔn)代碼)碼的最后兩個字符替換為“0F”以組成經(jīng)轉(zhuǎn)碼的報文域。對測試報文的各個報文域均進(jìn)行上述轉(zhuǎn)碼操作,以便將生成的各個經(jīng)轉(zhuǎn)碼的報文域組合在一起以構(gòu)成經(jīng)轉(zhuǎn)碼的數(shù)據(jù)報文。報文域合成單元302用于將由報文域轉(zhuǎn)碼單元301生成的經(jīng)轉(zhuǎn)碼的報文域組合成經(jīng)轉(zhuǎn)碼的測試報文。報文域轉(zhuǎn)碼單元301還可以用于采用現(xiàn)有的轉(zhuǎn)碼技術(shù)將字符編碼為EBCDIC的反饋報文進(jìn)行轉(zhuǎn)碼以生成字符編碼為GBK的轉(zhuǎn)碼后的反饋報文。圖4是本發(fā)明實(shí)施例的用于測試業(yè)務(wù)處理模塊的測試方法的流程圖,如圖4所示,本實(shí)施例的測試方法包括如下步驟:步驟401:存儲記載有業(yè)務(wù)處理模塊對測試報文的格式要求的第一報文格式文檔;步驟402:接收用戶輸入的交易數(shù)據(jù);步驟403:根據(jù)存儲的第一報文格式文檔和接收的交易數(shù)據(jù)生成符合第一報文格式文檔中記載的格式要求的測試報文;
步驟404:對測試報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的測試報文,其中,經(jīng)轉(zhuǎn)碼的測試報文的字符編碼為業(yè)務(wù)處理模塊能處理的字符編碼;步驟405:將經(jīng)轉(zhuǎn)碼的測試報文發(fā)送到業(yè)務(wù)處理模塊。由此,業(yè)務(wù)處理模塊可以利用接收到的經(jīng)轉(zhuǎn)碼的測試報文進(jìn)行業(yè)務(wù)處理。圖5是本發(fā)明另一實(shí)施例的用于測試業(yè)務(wù)處理模塊的測試方法的流程圖,在本實(shí)施例中,用于測試業(yè)務(wù)處理模塊的測試方法可以在執(zhí)行圖4所示的各個步驟之后,還執(zhí)行以下步驟:步驟501:存儲記載有業(yè)務(wù)處理模塊對反饋報文的格式要求的第二報文格式文檔;步驟502:接收業(yè)務(wù)處理模塊發(fā)來的反饋經(jīng)轉(zhuǎn)碼的測試報文的處理結(jié)果的反饋報文;步驟503:對反饋報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的反饋報文,其中,經(jīng)轉(zhuǎn)碼的反饋報文的字符編碼為報文處理模塊能處理的字符編碼;
步驟504:根據(jù)第二報文格式文檔和經(jīng)轉(zhuǎn)碼的反饋報文生成與經(jīng)轉(zhuǎn)碼的反饋報文相對應(yīng)的實(shí)體對象;步驟505:將實(shí)體對象整合到信息顯示界面以向用戶展示測試結(jié)果。因此,本發(fā)明提供的測試方法和測試系統(tǒng)具有通用性和可擴(kuò)展性并且能夠?yàn)橛脩籼峁┛梢暬臏y試結(jié)果展示界面。通用性體現(xiàn)在:本發(fā)明除了可以為基于客戶信息控制系統(tǒng)開發(fā)的業(yè)務(wù)處理模塊進(jìn)行測試,還可以為基于其他系統(tǒng)開發(fā)的業(yè)務(wù)處理模塊進(jìn)行測試;可擴(kuò)展性體現(xiàn)在:可以通過改變報文格式文檔的內(nèi)容來生成多種類型的報文。以上實(shí)施例僅為本發(fā)明的示例性實(shí)施例,不用于限制本發(fā)明,本發(fā)明的保護(hù)范圍由權(quán)利要求書限定。本領(lǐng)域技術(shù)人員可以在本發(fā)明的實(shí)質(zhì)和保護(hù)范圍內(nèi),對本發(fā)明做出各種修改或等同替換,這種修改或等同替換也應(yīng)視為落在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種用于測試業(yè)務(wù)處理模塊的測試系統(tǒng),所述測試系統(tǒng)生成測試報文并提供給所述業(yè)務(wù)處理模塊進(jìn)行業(yè)務(wù)處理,其特征在于,所述測試系統(tǒng)包括:信息輸入模塊、存儲模塊、報文處理模塊、轉(zhuǎn)碼模塊以及通信模塊,其中, 所述存儲模塊用于存儲記載有所述業(yè)務(wù)處理模塊對測試報文的格式要求的第一報文格式文檔; 所述信息輸入模塊用于接收用戶輸入的交易數(shù)據(jù)并將所述交易數(shù)據(jù)發(fā)送到所述報文處理模塊; 所述報文處理模塊用于根據(jù)所述存儲模塊所存儲的第一報文格式文檔和從所述信息輸入模塊接收的交易數(shù)據(jù)生成符合所述第一報文格式文檔中記載的格式要求的測試報文,然后將所述測試報文發(fā)送到所述轉(zhuǎn)碼模塊; 所述轉(zhuǎn)碼模塊用于從所述報文處理模塊接收所述測試報文,并對所述測試報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的測試報文,然后將所述經(jīng)轉(zhuǎn)碼的測試報文發(fā)送到所述通信模塊,其中,所述經(jīng)轉(zhuǎn)碼的測試報文的字符編碼為所述業(yè)務(wù)處理模塊能處理的字符編碼; 所述通信模塊用于將所述經(jīng)轉(zhuǎn)碼的測試報文轉(zhuǎn)發(fā)到所述業(yè)務(wù)處理模塊。
2.根據(jù)權(quán)利要求1所述的測試系統(tǒng),其特征在于, 所述存儲模塊還用于存儲記載有所述業(yè)務(wù)處理模塊對反饋報文的格式要求的第二報文格式文檔; 所述通信模塊還用于將所述業(yè)務(wù)處理模塊發(fā)來的反饋所述經(jīng)轉(zhuǎn)碼的測試報文的處理結(jié)果的反饋報文轉(zhuǎn)發(fā)到所述轉(zhuǎn)碼模塊; 所述轉(zhuǎn)碼模塊還用于對所述通信模塊轉(zhuǎn)發(fā)的反饋報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的反饋報文,然后將所述經(jīng)轉(zhuǎn)碼的反饋報文發(fā)送到所述報文處理模塊,其中,所述經(jīng)轉(zhuǎn)碼的反饋報文的字符編碼為所述報文處理模塊能處理的字符編碼; 所述報文處理模塊還用于根據(jù)所述存儲模塊所存儲的第二報文格式文檔和從所述轉(zhuǎn)碼模塊接收的經(jīng)轉(zhuǎn)碼的反饋報文生成與所述經(jīng)轉(zhuǎn)碼的反饋報文相對應(yīng)的實(shí)體對象。
3.根據(jù)權(quán)利要求1所述的測試系統(tǒng),其特征在于,所述報文處理模塊包括:對象處理單元和測試報文處理單元,其中, 所述對象處理單元用于按照所述第一報文格式文檔中記載的格式要求生成與所述測試報文相對應(yīng)的測試報文文檔對象,所述測試報文文檔對象包括多個元素節(jié)點(diǎn),每個元素節(jié)點(diǎn)均與所述測試報文中的一個報文域?qū)?yīng),每個元素節(jié)點(diǎn)的節(jié)點(diǎn)屬性均與這個元素節(jié)點(diǎn)對應(yīng)的報文域的域?qū)傩韵嗤? 所述測試報文處理單元用于將所述測試報文文檔對象中每個元素節(jié)點(diǎn)的值賦值為所述交易數(shù)據(jù)中相應(yīng)的數(shù)據(jù)項(xiàng)的值并基于已經(jīng)用元素節(jié)點(diǎn)記載所述交易數(shù)據(jù)中全部數(shù)據(jù)項(xiàng)的測試報文文檔對象來生成所述測試報文。
4.根據(jù)權(quán)利要求2所述的測試系統(tǒng),其特征在于,所述報文處理模塊包括:對象處理單元和測試報文處理單元,其中, 所述對象處理單元用于將所述經(jīng)轉(zhuǎn)碼的反饋報文轉(zhuǎn)換成反饋報文文檔對象,并且按照所述第二報文格式文檔中記載的格式要求生成與所述經(jīng)轉(zhuǎn)碼的反饋報文相對應(yīng)的實(shí)體對象,所述實(shí)體對象包括多個成員變量,每個成員 變量均與所述經(jīng)轉(zhuǎn)碼的反饋報文中的一個報文域?qū)?yīng),每個成員變量的成員變量屬性均與這個成員變量對應(yīng)的報文域的域?qū)傩韵嗤? 所述測試報文處理單元用于將所述實(shí)體對象中每個成員變量的值賦值為所述反饋報文文檔對象中的相應(yīng)的元素節(jié)點(diǎn)的值。
5.根據(jù)權(quán)利要求1所述的測試系統(tǒng),其特征在于,所述測試報文包括多個報文域,所述第一報文格式文檔規(guī)定了各個報文域的數(shù)據(jù)長度;所述轉(zhuǎn)碼模塊包括報文域轉(zhuǎn)碼單元和報文合成單元, 所述報文域轉(zhuǎn)碼單元用于:將所述報文域的字符編碼轉(zhuǎn)換成擴(kuò)充的二進(jìn)制編碼的十進(jìn)制交換碼以生成臨時報文域,然后,將所述臨時報文域占用的字符數(shù)和與所述臨時報文域?qū)?yīng)的報文域在所述第一報文格式文檔中被規(guī)定的數(shù)據(jù)長度進(jìn)行比較,如果所述字符數(shù)小于等于所述數(shù)據(jù)長度,則在所述報文域的字符編碼之前或之后補(bǔ)充個數(shù)為所述數(shù)據(jù)長度減去所述字符數(shù)的指定的填充字符以組成經(jīng)轉(zhuǎn)碼的報文域;如果所述字符數(shù)大于所述數(shù)據(jù)長度,則查找出所述臨時報文域中的最后一個漢字,并將所述漢字的字符編碼的最后兩個字符替換為“OF”以生成經(jīng)轉(zhuǎn)碼的報文域; 所述報文域合成單元用于將由所述報文域轉(zhuǎn)碼單元生成的所述經(jīng)轉(zhuǎn)碼的報文域組合成所述經(jīng)轉(zhuǎn)碼的測試報文。
6.根據(jù)權(quán)利要求1所述的測試系統(tǒng),其特征在于,還包括:顯示模塊,其用于生成供用戶輸入所述交易數(shù)據(jù)的信息輸入界面。
7.根據(jù)權(quán)利要求6所述的測試系統(tǒng),其特征在于,所述顯示模塊還用于從所述報文處理模塊獲取實(shí)體對象并將所述實(shí)體對象整合到信息顯示界面以向用戶展示測試結(jié)果。
8.一種用于測試業(yè)務(wù)處理模塊的測試方法,用于生成測試報文并提供給所述業(yè)務(wù)處理模塊進(jìn)行業(yè)務(wù)處理,其特征在于,所述 測試方法包括: 存儲記載有所述業(yè)務(wù)處理模塊對測試報文的格式要求的第一報文格式文檔; 接收用戶輸入的交易數(shù)據(jù); 根據(jù)存儲的所述第一報文格式文檔和接收的所述交易數(shù)據(jù)生成符合所述第一報文格式文檔中記載的格式要求的測試報文; 對所述測試報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的測試報文,其中,所述經(jīng)轉(zhuǎn)碼的測試報文的字符編碼為所述業(yè)務(wù)處理模塊能處理的字符編碼; 將所述經(jīng)轉(zhuǎn)碼的測試報文發(fā)送到業(yè)務(wù)處理模塊。
9.根據(jù)權(quán)利要求8所述的用于測試業(yè)務(wù)處理模塊的測試方法,其特征在于,還包括: 存儲記載有所述業(yè)務(wù)處理模塊對反饋報文的格式要求的第二報文格式文檔; 接收所述業(yè)務(wù)處理模塊發(fā)來的反饋所述經(jīng)轉(zhuǎn)碼的測試報文的處理結(jié)果的反饋報文; 對所述反饋報文進(jìn)行字符編碼轉(zhuǎn)換,以生成經(jīng)轉(zhuǎn)碼的反饋報文,其中,所述經(jīng)轉(zhuǎn)碼的反饋報文的字符編碼為所述報文處理模塊能處理的字符編碼; 根據(jù)所述第二報文格式文檔和所述經(jīng)轉(zhuǎn)碼的反饋報文生成與所述經(jīng)轉(zhuǎn)碼的反饋報文相對應(yīng)的實(shí)體對象。
10.根據(jù)權(quán)利要求9所述的用于測試業(yè)務(wù)處理模塊的測試方法,其特征在于,還包括: 將所述實(shí)體對象整合到信息顯示界面以向用戶展示測試結(jié)果。
全文摘要
本發(fā)明提供一種用于測試業(yè)務(wù)處理模塊的測試系統(tǒng),所述測試系統(tǒng)生成測試報文并提供給所述業(yè)務(wù)處理模塊進(jìn)行業(yè)務(wù)處理,所述測試系統(tǒng)包括信息輸入模塊、存儲模塊、報文處理模塊、轉(zhuǎn)碼模塊以及通信模塊。所述測試系統(tǒng)根據(jù)用戶輸入的交易數(shù)據(jù)生成符合業(yè)務(wù)處理模塊對測試報文的格式要求和編碼要求的經(jīng)轉(zhuǎn)碼的測試報文,從而利用經(jīng)轉(zhuǎn)碼的測試報文來測試業(yè)務(wù)處理模塊執(zhí)行業(yè)務(wù)處理的情況。本發(fā)明還提供了一種用于測試業(yè)務(wù)處理模塊的測試方法。通過本發(fā)明的測試方法和測試系統(tǒng)能夠適應(yīng)不同的業(yè)務(wù)處理模塊對報文格式和字符編碼的要求,避免了重復(fù)開發(fā),節(jié)約了測試成本。
文檔編號H04L1/00GK103236959SQ20131016935
公開日2013年8月7日 申請日期2013年5月9日 優(yōu)先權(quán)日2013年5月9日
發(fā)明者于洪奎, 張海鵬 申請人:中國銀行股份有限公司