專利名稱:每日構造的自動仿真方法及系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及軟件技術領域,尤其涉及一種每日構造的自動仿真方法及系統(tǒng)。
背景技術:
在項目研發(fā)過程中,往往需要每天執(zhí)行編譯版本、編碼規(guī)范檢查、自動化測試等, 該過程被稱之為每日構造。每日構造是一種控制版本質量的重要手段,要實現(xiàn)盡快對版本代碼的變動做出反應,每日構造的效率至關重要。而提高每日構造的效率的一個重要途徑是提高每日構造的自動化程度?,F(xiàn)有技術公開了一種每日構建方法和裝置,其通過定時對代碼進行下載、編譯并生成日志文件來實現(xiàn)每日構造的自動化,極大提高了每日構造的編譯效率。然而,該方法并沒有涉及到代碼的自動化回歸驗證。隨著項目研發(fā)過程的進展,到了項目的中后期的時候, 需要發(fā)布版本非常頻繁,并且代碼量和解決故障的數(shù)量會激增,如果代碼的自動化回歸驗證還是手工來操作的話,不能嚴格保證發(fā)布版本時驗證所有故障,也不能保證測試過程中基本功能不受影響。因此,亟待提供一種改進的每日構造的自動仿真方法及系統(tǒng)以克服上述缺陷。
發(fā)明內容
本發(fā)明要解決的技術問題在于提供一種用于每日構造的自動仿真方法和系統(tǒng),其可以保證項目版本的質量,節(jié)省版本發(fā)布時間和工作量。為了解決上述技術問題,本發(fā)明提供了一種用于每日構造的自動仿真方法,其包括以下步驟構建虛擬驅動以模擬單板環(huán)境;更新代碼并基于所述單板環(huán)境編譯生成項目版本;以及對所述項目版本進行自動化回歸測試。優(yōu)選地,所述每日構造的自動仿真方法還包括將所述自動化回歸測試生成的回歸結果與標準結果進行比對并保存比對結果,所述標準結果包括首次完整測試過程中S 口報文下發(fā)和上報的數(shù)據(jù)。 進一步地,所述每日構造的自動仿真方法還包括反饋所述比對結果。更進一步地,若所述回歸結果與所述標準結果不一致,則所述每日構造的自動仿真方法還包括根據(jù)所述比對結果定位故障。本發(fā)明還提供了一種每日構造的自動仿真系統(tǒng),其包括虛擬驅動模塊,用于模擬單板環(huán)境;代碼更新及編譯模塊,用于更新代碼并基于所述虛擬驅動模塊模擬的單板環(huán)境編譯生成項目版本;以及自動化回歸測試模塊,用于對所述代碼更新及編譯模塊生成的項目版本進行自動化回歸測試。
優(yōu)選地,所述每日構造的自動仿真系統(tǒng)還包括回歸結果比對模塊,用于將自動化回歸測試模塊生成的回歸結果與標準結果進行比對并保存比對結果,所述標準結果包括首次完整測試過程中S 口報文下發(fā)和上報的數(shù)據(jù)。進一步地,所述每日構造的自動仿真系統(tǒng)還包括結果反饋模塊,用于反饋所述回歸結果比對模塊生成的比對結果。更進一步地,所述每日構造的自動仿真系統(tǒng)還包括故障定位模塊,用于當所述回歸結果比對模塊的比對結果表示所述回歸結果與所述標準結果不一致時,根據(jù)所述比對結果定位故障。本發(fā)明的每日構造的自動仿真方法和系統(tǒng)通過構件虛擬驅動來模擬單板真實環(huán)境,基于所述單板環(huán)境進行自動化回歸測試,以對項目版本進行充分驗證和回歸測試,使得項目版本的質量得到了大幅度提高,從而大大節(jié)省了版本發(fā)布時間和工作量。
圖1為本發(fā)明每日構造的自動仿真方法的一個實施例的流程示意圖;圖2為本發(fā)明每日構造的自動仿真系統(tǒng)的一個實施例的結構框圖;圖3為本發(fā)明每日構造的自動仿真系統(tǒng)的另一實施例的結構框圖;圖4為本發(fā)明每日構造的自動仿真系統(tǒng)的又一實施例的結構框圖。為了使本發(fā)明的技術方案更加清楚、明了,下面將結合附圖作進一步詳述。
具體實施例方式本發(fā)明提供了一種每日構造的自動仿真方法和系統(tǒng),其可以保證項目版本的質量,節(jié)省版本發(fā)布時間和工作量。圖1為本發(fā)明每日構造的自動仿真方法的一個實施例的流程示意圖。本實施例以某 SDH(Synchronous Digital Hierarchy,同步數(shù)字系列)設備中 HOXA(High order Cross-connect, type A,A型高階交叉板)為例,說明本發(fā)明的每日構造的自動仿真方法。 本實施例的每日構造的自動仿真方法包括步驟SlOl 構建虛擬驅動以模擬單板環(huán)境。具體的設計公用的虛擬驅動,模擬驅動的讀寫寄存器操作,并且整合到HOXA的代碼中去使用批處理語言編寫.BAT文件,組建 HOXA的自動仿真系統(tǒng)。步驟S102 更新代碼并基于所述單板環(huán)境編譯生成項目版本。具體的,可以定時連接項目代碼服務器自動更新代碼,然后編譯包含了虛擬驅動的HOXA可在PC (Personal Computer,個人電腦)上運行的工程。步驟S103 對所述項目版本進行自動化回歸測試。步驟S104:將所述自動化回歸測試生成的回歸結果與標準結果進行比對并保存比對結果,所述標準結果包括首次完整測試過程中S 口報文下發(fā)和上報的數(shù)據(jù)。進一步地,前述每日構造的自動仿真方法還可以包括反饋所述比對結果。具體的, 可以通過郵件投遞系統(tǒng),將所述比對結果發(fā)送給相應的項目負責人。項目負責人收到所述比對結果后進行相應的處理。具體的,若所述比對結果為不通過驗證,則項目負責人可以通過比對結果定位故障,然后對代碼進行修改,并將修改后的代碼重新上傳至代碼服務器,此時,步驟S202 S204會重復進行,直至代碼通過驗證。若所述比對結果為通過驗證時,項目負責人即可發(fā)布項目版本。容易知道,項目負責人也可以主動查詢所述比對結果;另外, 根據(jù)比對結果對故障進行定位可以人工完成也可以通過系統(tǒng)自動分析定位;對于自動化回歸測試的回歸結果也可以通過人工完成。由于本實施例的每日構造的自動仿真方法通過構件虛擬驅動來模擬單板真實環(huán)境,基于所述單板環(huán)境進行自動化回歸測試,并將回歸結果與標準結果進行比對,以對項目版本進行充分驗證和回歸測試,使得項目版本的質量得到了大幅度提高,從而大大節(jié)省了版本發(fā)布時間和工作量。圖2為本發(fā)明每日構造的自動仿真系統(tǒng)的一個實施例的流程圖,如圖2所示,本實施例的每日構造的自動仿真系統(tǒng)包括虛擬驅動模塊201、代碼更新及編譯模塊202、自動化回歸測試模塊203和回歸結果比對模塊204。其中,所述虛擬驅動模塊201用于模擬單板環(huán)境;所述代碼更新及編譯模塊202用于更新代碼并基于所述虛擬驅動模塊201模擬的單板環(huán)境編譯生成項目版本;所述自動化回歸測試模塊203用于對所述代碼更新及編譯模塊 202生成的項目版本進行自動化回歸測試;所述回歸結果比對模塊204用于將自動化回歸測試模塊203生成的回歸結果與標準結果進行比對并保存比對結果,所述標準結果包括首次完整測試過程中S 口報文下發(fā)和上報的數(shù)據(jù)。上述虛擬驅動的實現(xiàn)方式可以把單板中讀寫寄存器的操作,在PC中模擬為往文本文件中具體位置讀寫數(shù)據(jù),并且在文本文件的一些特定位置來描述模擬單板的具體信息,方便在PC上可以模擬單板的環(huán)境。上述自動化回歸測試模塊的實現(xiàn)方式可以是在自主開發(fā)的TPCTestPlatform,測試平臺)上編寫測試用例,并且將測試用例按照測試需求組建為完整的測試方案,通過TP 管理起來。測試用例的格式可通過單板通信接口的報文下發(fā)和上報的數(shù)據(jù)格式。TP與待測試程序進行連接,并且按照管理的測試方案把報文下發(fā)給待測試程序,并且接收待測試程序的報文上報。同時把一個測試方案的報文下發(fā)和上報的數(shù)據(jù)記錄在一個文本文件中作為回歸結果和標準結果做比較。進一步地,本發(fā)明每日構造的自動仿真系統(tǒng)的另一實施例如圖3所示,該自動仿真系統(tǒng)與前一實施例的不同之處在于,其還包括結果反饋模塊205,用于反饋所述回歸結果比對模塊204生成的比對結果。更進一步地,該自動仿真系統(tǒng)與前一實施例的不同之處在于,其還包括故障定位模塊206,用于當所述回歸結果比對模塊204的比對結果為不通過驗證時,根據(jù)所述比對結果定位故障,對于具體字段和標準結果不一致的地方,根據(jù)自動化回歸測試模塊,分析功能實現(xiàn)的問題出現(xiàn)在軟件某模塊,實現(xiàn)故障的定位。由于本實施例的每日構造的自動仿真系統(tǒng)通過構件虛擬驅動來模擬單板真實環(huán)境,基于所述單板環(huán)境進行自動化回歸測試,并將回歸結果與標準結果進行比對,以對項目版本進行充分驗證和回歸測試,使得項目版本的質量得到了大幅度提高,從而大大節(jié)省了版本發(fā)布時間和工作量。本領域普通技術人員可以理解實現(xiàn)上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中, 該程序在執(zhí)行時,包括方法實施例的步驟之一或其組合。
另外,在本發(fā)明各個實施例中的各功能單元可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,也可以存儲在一個計算機可讀存儲介質中。上述提到的存儲介質可以是只讀存儲器、磁盤或光盤等。以上所述僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接應用在其他相關的技術領域,均同理包括在本發(fā)明的專利保護范圍內。
權利要求
1.一種每日構造的自動仿真方法,包括構建虛擬驅動以模擬單板環(huán)境;更新代碼并基于所述單板環(huán)境編譯生成項目版本;以及對所述項目版本進行自動化回歸測試。
2.根據(jù)權利要求1所述的每日構造的自動仿真方法,其特征在于,還包括將所述自動化回歸測試生成的回歸結果與標準結果進行比對并保存比對結果,所述標準結果包括首次完整測試過程中單板通信接口報文下發(fā)和上報的數(shù)據(jù)。
3.根據(jù)權利要求2所述的每日構造的自動仿真方法,其特征在于,還包括反饋所述比對結果。
4.根據(jù)權利要求1或2或3所述的每日構造的自動仿真方法,其特征在于,若所述回歸結果與所述標準結果不一致,則還包括根據(jù)所述比對結果定位故障。
5.一種每日構造的自動仿真系統(tǒng),其特征在于,包括虛擬驅動模塊,用于模擬單板環(huán)境;代碼更新及編譯模塊,用于更新代碼并基于所述虛擬驅動模塊模擬的單板環(huán)境編譯生成項目版本;以及自動化回歸測試模塊,用于對所述代碼更新及編譯模塊生成的項目版本進行自動化回歸測試。
6.根據(jù)權利要求5所述的每日構造的自動仿真系統(tǒng),其特征在于,還包括回歸結果比對模塊,用于將自動化回歸測試模塊生成的回歸結果與標準結果進行比對并保存比對結果,所述標準結果包括首次完整測試過程中S 口報文下發(fā)和上報的數(shù)據(jù)。
7.根據(jù)權利要求6所述的每日構造的自動仿真系統(tǒng),其特征在于,還包括結果反饋模塊,用于反饋所述回歸結果比對模塊生成的比對結果。
8.根據(jù)權利要求5或6或7所述的每日構造的自動仿真系統(tǒng),其特征在于,還包括故障定位模塊,用于當所述回歸結果比對模塊的比對結果表示所述回歸結果與所述標準結果不一致時,根據(jù)所述比對結果定位故障。
全文摘要
本發(fā)明公開了一種每日構造的自動仿真方法,其包括構建虛擬驅動以模擬單板環(huán)境;更新代碼并基于所述單板環(huán)境編譯生成項目版本;以及對所述項目版本進行自動化回歸測試。本發(fā)明還公開了一種實現(xiàn)前述方法的自動仿真系統(tǒng)。該自動仿真方法和系統(tǒng)可以保證項目版本的質量,節(jié)省版本發(fā)布時間和工作量。
文檔編號G06F11/36GK102567189SQ201010586780
公開日2012年7月11日 申請日期2010年12月14日 優(yōu)先權日2010年12月14日
發(fā)明者郭偉 申請人:中興通訊股份有限公司