本發(fā)明涉及一種軟件開發(fā)過程中的內部測試驅動系統(tǒng)和方法,尤其涉及基于Z/OS主機單一平臺的測試驅動系統(tǒng)和方法。
背景技術:在軟件開發(fā)過程中,由于產品規(guī)模、功能劃分等因素,為提高開發(fā)效率、增強響應,往往采取在軟件系統(tǒng)的開發(fā)中分模塊、并行開發(fā)的策略。在這種狀況下,由于各個模塊開發(fā)進度不一致、各模塊開發(fā)環(huán)境聯(lián)通情況復雜等因素,相同任務不同模塊間的內部測試因缺乏組裝、或組裝時間較短而影響缺陷識別和排除的效果,導致集成測試階段因內部測試不充分而集中暴露。特別是對于面向主機CICS聯(lián)機應用系統(tǒng),例如核心銀行系統(tǒng),由于該系統(tǒng)的產品性質,決定其需較高的響應能力和較低的系統(tǒng)資源消耗情況,因此產品在開發(fā)階段需要進行一定程度的壓力測試。目前外部產品中,有LOADRUNNER等外部廠商提供的壓力測試產品,可以通過建立復雜案例、對系統(tǒng)進行完整的壓力測試工作。但是此類工具有外部依賴高、需其他產品支持、對外部系統(tǒng)消耗較大、測試過程復雜等不利因素;而單一(或若干)模塊內部測試階段的壓力測試有測試過程簡單、外部支持缺乏、模塊間無聯(lián)通等特點,故需一種可以在單一平臺上開展壓力測試的有效方法。因此,需要建立一套完整的測試驅動策略,即能夠消除因模塊間開發(fā)進度差異致使內部測試無法開展的不利影響、能夠在單一平臺中進行模擬組裝,又能在單一平臺上批量發(fā)起交易,對產品進行壓力測試。
技術實現要素:本發(fā)明主要目的在于提供一種面向主機CICS聯(lián)機應用系統(tǒng)在系統(tǒng)內部實現全流程單元測試、組裝測試與壓力測試的方法,用于達到擺脫聯(lián)通性、開發(fā)進度差異限制,實現單一(或若干)模塊的內部測試過程,同時提供單一(或若干)模塊壓力測試的功能。為達到上述目的,本發(fā)明提供了基于Z/OS主機單一平臺的測試驅動系統(tǒng)和方法,所述系統(tǒng)包括以下幾個部分:XML格式分析模塊、聯(lián)機報文分析模塊、聯(lián)機報文合成模塊、參數配置模塊、測試主驅動模塊和結果分析模塊。各模塊分別實現下述的方法和步驟:XML格式分析模塊負責對柜面渠道使用的XML格式接口進行分析,形成供聯(lián)機報文分析和合成使用的格式模板;聯(lián)機報文分析模塊負責對已有報文,根據XML格式分析形成的格式模板進行分析,提取要素項數據;聯(lián)機報文合成模塊負責根據XML分析模塊生成的格式模板、或接口文檔發(fā)布的接口格式,填充要素項數據和驅動策略參數后形成聯(lián)機報文;參數配置模塊負責通過配置參數,定義諸如循環(huán)次數、循環(huán)順序、跟蹤信息等測試驅動策略,供測試驅動主模塊解釋、使用;測試主驅動模塊負責接收經過參數配置模塊配置的輸入文本,受控的通過主機系統(tǒng)提供的EXCI接口驅動測試過程。結果分析模塊接收分析測試結果并按參數配置模塊定義的策略進行處理,并在一定的策略下重新啟動測試主驅動模塊進行另一輪次的測試。從上述方案可以看出,本發(fā)明提供了基于主機單一平臺完整的測試驅動方法,針對面臨的問題提出了合理的解決方案,既消除了并行開發(fā)過程中模塊間開發(fā)進度差異導致的組裝延遲,又實現了對測試案例的復用與自動化處理;同時,具備在單一平臺直接進行壓力測試的優(yōu)點。與目前實現同類功能的產品相比,本發(fā)明具備以下優(yōu)越性:1、平臺獨立性優(yōu)點;2、操作便利性優(yōu)點;3、功能組合度高優(yōu)點;4、提供開放接口,具有拓展性。附圖說明圖1是測試驅動系統(tǒng)模塊層次圖;圖2是測試驅動方法整體流程圖。具體實施方式為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明白,以下結合具體實施案例,并參照附圖,對本發(fā)明進一步詳細說明。如圖1所示,本發(fā)明提供了一種基于Z/OS主機單一平臺的測試驅動系統(tǒng),包括以下幾個模塊:XML格式分析模塊、聯(lián)機報文分析模塊、聯(lián)機報文合成模塊、參數配置模塊、測試主驅動模塊和結果分析模塊。其中,XML格式分析模塊負責對柜面渠道使用的XML格式接口進行分析,形成供聯(lián)機報文分析和合成使用的格式模板;聯(lián)機報文分析模塊負責對已有報文,根據XML格式分析形成的格式模板進行分析,提取要素項數據;聯(lián)機報文合成模塊負責根據XML分析模塊生成的格式模板、或接口文檔發(fā)布的接口格式,填充要素項數據后形成聯(lián)機報文;參數配置模塊負責通過配置參數,定義諸如循環(huán)次數、循環(huán)順序、跟蹤信息等測試驅動策略,供測試驅動主模塊解釋、使用;測試主驅動模塊負責接收經過參數配置模塊配置的輸入文本,受控的通過主機系統(tǒng)提供的EXCI接口驅動測試過程。結果分析模塊接收分析測試結果并按參數配置模塊定義的策略進行處理,并在一定的策略下重新啟動測試主驅動模塊進行另一輪次的測試。另外,本發(fā)明的方法整體流程如圖2所示,圖中用框線將整體流程劃分為四個步驟,每個框右下角標注①至④依次對應于每一個步驟:一、格式分析步驟:本步驟涉及到發(fā)明中的XML格式分析模塊。根據測試驅動具體情況,完成本步驟有兩種可選方式:自動方式和手工方式。自動方式:對于已經建立了XML格式接口的報文,在此步驟中可以直接將XML格式的接口輸入到“XML格式分析模塊”中,“XML格式分析模塊”自動根據XML接口生成“格式模板”,供后續(xù)步驟使用;手工方式:對于未建立XML格式接口的報文,根據其在總體設計階段確定的接口格式文檔,手工填寫“格式模板”,供后續(xù)步驟使用。本步驟產出物為“格式模板”,供要素組織步驟和報文生成步驟使用。二、要素組織步驟:本步驟涉及到發(fā)明中的聯(lián)機報文分析模塊。根據測試驅動具體情況,完成本步驟有兩種可選方式:自動方式和手工方式。自動方式:對于已經獲取了聯(lián)機輸入的報文,將聯(lián)機輸入報文、“格式模板”(在格式分析步驟生成)輸入到“聯(lián)機報文分析模塊”中,對聯(lián)機報文進行分析、拆分、并按測試用例進行必要的修改,形成“要素項數據”,供后續(xù)步驟使用;手工方式:對于未獲取聯(lián)機輸入的報文、或首次進行內部測試無聯(lián)機輸入報文可參考的,按照測試用例直接手工組織“要素項數據”,供后續(xù)步驟使用。本步驟產出物為“要素項數據”,供報文生成步驟使用。三、報文生成步驟:本步驟涉及到發(fā)明中的聯(lián)機報文合成模塊和參數配置模塊。本步驟以自動方式完成。本步驟將要素組織步驟生成的“要素項數據”根據格式模板輸入到“聯(lián)機報文合成模塊”中,并將測試用例中的循環(huán)次數、循環(huán)方法、前后文關聯(lián)、跟蹤信息等作為驅動策略在“參數配置模塊”中輸入,共同生成即包括聯(lián)機數據、又包括驅動策略參數的“聯(lián)機報文”,供后續(xù)步驟使用。本步驟的產出物為“聯(lián)機報文”,供測試驅動步驟使用。四、測試驅動步驟:本步驟涉及到發(fā)明中的測試主驅動模塊和結果分析模塊。本步驟以自動方式完成。本步驟將報文生成步驟生成的“聯(lián)機報文”輸入到“測試主驅動模塊”中,“測試主驅動模塊”根據“聯(lián)機報文”中定制的驅動策略參數,決定測試驅動方式,通過主機EXCI接口驅動聯(lián)機測試,并收集返回結果。當測試驅動結束后,將返回結果提交“結果分析模塊”進行分析;“結果分析模塊”根據返回結果和驅動策略,決定將返回結果提交用戶,或按策略調整“聯(lián)機報文”后重新驅動聯(lián)機測試。若策略決定重啟驅動聯(lián)機測試,則將流程交還給“測試主驅動模塊”,否則將結果文本通過FTP協(xié)議傳遞給用戶查看最終處理結果。本步驟循環(huán)次數定義有上限,避免死循環(huán)情況出現。本步驟為測試驅動最后一個步驟,最終結果為交易處理結果,供用戶查看使用。盡管這里參考多個示范性實施例對實施例進行了描述,應當知道本領域技術人員可以實現在本發(fā)明原理的精神和范圍內的許多其他的修改和實施方式。更特別地,在本發(fā)明說明書、附圖和附帶的權利要求的范圍內組件部分和/或從屬組合配置中的各種變化和修改是可能的。因此,與各種變化和修改有關的內容也應當解釋為包含在本發(fā)明的范圍內。