基于自反饋的地理空間信息處理工具功能性自動測試方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及地理空間信息軟件測試領(lǐng)域,尤其涉及一種基于自反饋的地理空間信息處理工具自動測試方法。
技術(shù)背景
[0002]反饋又稱回饋,是現(xiàn)代科學(xué)技術(shù)的基本概念之一。一般來講,控制論中的反饋概念,指將系統(tǒng)的輸出返回到輸入端并以某種方式改變輸入,進而影響系統(tǒng)功能的過程,即將輸出量通過恰當(dāng)?shù)臋z測裝置返回到輸入端并與輸入量進行比較的過程。反饋可分為負反饋和正反饋。在其他學(xué)科領(lǐng)域,反饋一詞也被賦予了其他的含義,例如傳播學(xué)中的反饋,無線電工程技術(shù)中的反饋等等。自反饋測試方法的概念來源于反饋理論,通過待測試軟件對測試結(jié)果的反饋信息,調(diào)整測試策略,達到對待測試軟件更為全面、準(zhǔn)確的測試。本發(fā)明將自反饋的理念運用到地理空間信息處理工具的功能性測試中,實現(xiàn)地理空間信息處理工具功能性的自動化檢測。
[0003]隨著地理空間信息技術(shù)研究和應(yīng)用的不斷深入,地理空間信息工具集的規(guī)模越來越大,功能點越來越多,開發(fā)人員的自測或測試人員的人工測試非常耗時和繁瑣,勢必導(dǎo)致測試效率的低下,而自動化測試正好解決這些耗時繁瑣的任務(wù)。軟件測試自動化就是通過測試工具或其他手段,按照預(yù)定計劃對軟件產(chǎn)品進行自動的測試,它是軟件測試的一個重要組成部分,能夠完成許多手工無法完成或者難以實現(xiàn)的一些測試工作。同時,通常來講,功能性測試的覆蓋范圍不可能達到100%,即時通過測試的軟件工具,也存在潛在風(fēng)險,可能有一部分功能無法滿足用戶的使用需求。因此,通過自反饋技術(shù),不斷調(diào)整測試用例,實現(xiàn)更為精確化的功能性測試、更大范圍的測試覆蓋率,是提高軟件質(zhì)量、節(jié)省經(jīng)費、縮短產(chǎn)品發(fā)布周期的有效途徑之一。
[0004]有基于此,本發(fā)明提出了一種基于自反饋理念的地理空間信息處理工具功能性自動檢測方法,力爭為各類地理信息系統(tǒng)的開發(fā)與維護人員提供一套穩(wěn)定、便捷、高效的工具自動檢測方案。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明的主要目的在于提供一種輕量級、高效的、準(zhǔn)確的基于自反饋的地理空間信息處理工具自動測試方法,用于解決現(xiàn)有地理信息類軟件測試工作量重復(fù)、測試繁復(fù)、測試覆蓋率低等技術(shù)問題。
[0006]為達到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的:基于自反饋的地理空間信息處理工具功能性自動測試方法,其不同在于:其包括以下步驟:
步驟I)、待測試軟件做好測試準(zhǔn)備后,對待測試軟件進行功能分析,用于將待測試軟件的測試功能分類、分級,并生成功能清單;
步驟2)、根據(jù)功能清單,將分類、分級后的功能,分解成為多個更小粒度、具有單一功能的功能模塊,確保每一個功能模塊可以由單組冊書數(shù)據(jù)來完成測試,最后生成功能模塊清單;
步驟3)、針對功能模塊清單中各種類型不一的功能模塊,通過測試方法選擇器,選擇對應(yīng)于每個功能模塊的測試方法,并標(biāo)識功能模塊清單;
步驟4)、測試用例生成器根據(jù)功能模塊清單中每個功能模塊的特性以及對應(yīng)選擇的測試方法,生成測試用例請求單,向測試用例庫發(fā)送使用請求調(diào)用測試用例庫,選取滿足功能模塊測試需求的測試用例,若沒有合適用例,支持測試人員手動添加;得到測試用例庫響應(yīng)后將對應(yīng)于具體功能模塊、具體測試方法的預(yù)測測試結(jié)果標(biāo)識于功能模塊清單中最后標(biāo)識功能模塊清單,表明測試用例成功調(diào)用,并給出相應(yīng)測試數(shù)據(jù)的合格測試結(jié)果;
步驟5)、開始測試直到生成測試結(jié)果,將測試結(jié)果標(biāo)識于功能模塊清單中;
步驟6)、通過測試結(jié)果分析器,分析功能模塊清單中的預(yù)測結(jié)果和實際生成的測試結(jié)果,根據(jù)被測試的工具軟件反饋測試過程與測試結(jié)果的一系列信息,調(diào)整測試用例;
步驟7)、對被測試軟件進行二次測試,將本次測試結(jié)果,結(jié)合功能模塊清單中的信息,生成測試報告。
[0007]進一步的,所述步驟2)還包括以下具體步驟:根據(jù)功能清單所列出的功能,按照功能的不同類別細化為包括數(shù)據(jù)存儲功能、數(shù)據(jù)運算功能、數(shù)據(jù)可視化功能在內(nèi)的功能,然后將細化后的功能按照測試的要求,進一步細化為每一個功能都可以由一組數(shù)據(jù)單獨測試的功能模塊,并生成功能模塊清單。
[0008]進一步的,所述步驟4)還包括以下具體步驟:在測試方法選擇器標(biāo)識功能模塊清單后,將提交給測試用例生成器,測試用例根據(jù)功能模塊清單中的描述,檢索測試用例數(shù)據(jù)庫,如果檢索到符合條件的測試用例,便將測試用例的描述標(biāo)識在功能模塊清單中相應(yīng)的功能模塊;當(dāng)沒有檢索到合適的測試用例,測試用例數(shù)據(jù)庫將支持用戶的自定義編輯。
[0009]本發(fā)明的基本思想是:本發(fā)明程序系統(tǒng)的業(yè)務(wù)邏輯通過被測試的用戶軟件的自反饋信息來來實現(xiàn)軟件的精確化測試。使用功能分析器對待測試軟件進行功能分析;使用功能分解器將功能分析器分析出的功能分解為對原子粒度的功能模塊;接著使用調(diào)用測試方法選擇器,選擇對應(yīng)于每個功能模塊的測試方法;調(diào)用測試用例生成器在測試用例庫中選擇測試用例;最后通過測試結(jié)果分析器來分析結(jié)果,根據(jù)結(jié)果的不同,生成測試報告或者重新轉(zhuǎn)會到測試方法選擇步驟,開始新一輪的測試。
【附圖說明】
[0010]圖1為一種基于自反饋的地理空間信息處理工具功能性自動測試系統(tǒng)的架構(gòu)圖; 圖2為一種基于自反饋的地理空間信息處理工具功能性自動測試方法的流程示意圖。
【具體實施方式】
[0011]參見圖1-圖2,本發(fā)明實施方式基于自反饋的地理空間信息處理工具功能性自動測試方法,以自反饋理念構(gòu)建功能性自動測試服務(wù)器,完成對地理空間信息處理工具的功能分析、分解、測試等,步驟如下:
1)待測試軟件做好測試準(zhǔn)備后,通過功能分析器,生成功能清單;
2)功能分析清單將分析結(jié)果傳遞給功能分解器,功能分解器將每個功能分解成為粒度更小,具有單一功能特性的功能模塊,生成功能模塊清單; 3)針對功能模塊清單中各種類型不一的功能模塊,通過測試方法選擇器,選擇對應(yīng)于每個功能模塊的測試方法,并標(biāo)識功能模塊清單;
4)測試用例生成器根據(jù)每個功能模塊的特性以及對應(yīng)選擇的測試方法,生成測試用例請求單,向測試用例庫發(fā)送使用請求,得到響應(yīng)后將對應(yīng)于具體功能模塊、具體測試方法的預(yù)測測試結(jié)果標(biāo)識于功能模塊清單中;
5)開始測試直到生成測試結(jié)果,將測試結(jié)果標(biāo)識于功能模塊清單中;
6)通過測試結(jié)果分析器,分析功能模塊清單中的預(yù)測結(jié)果和實際生成的測試結(jié)果,根據(jù)被測試的工具軟件反饋測試過程與測試結(jié)果的一系列信息,調(diào)整測試用例;
7)對被測試軟件進行二次測試,將本次測試結(jié)果,結(jié)合功能模塊清單中的信息,生成測i式?艮告ο
[0012]進一步的,所述步驟I)還包括以下步驟:待測試軟件準(zhǔn)備好測試后,將調(diào)用功能分析器。功能分析器提供各種功能的詳細描述,由測試人員輔助,根據(jù)本次待測試軟件將實現(xiàn)的功能,調(diào)用功能分析器中的功能選項。同時,對于功能分析器中沒有收錄的新功能,功能分析器也將提供新功能錄入保存的方法。
[0013]進一步的,所述步驟2)還包括以下步驟:在功能分析器生成的功能清單轉(zhuǎn)交給功能分解器后,功能分解器將根據(jù)功能清單所列出的功能,按照功能的不同類別細化,如數(shù)據(jù)功能可以細分為數(shù)據(jù)存儲功能、數(shù)據(jù)運算功能、數(shù)據(jù)可視化功能等,然后將細化后的功能按照測試的要求,進一步細化為每一個功能都可以由一組數(shù)據(jù)單獨測試的功能模塊,并生成功能模塊清單。
[0014]進一步的,所述步驟3)還包括以下步驟:測試方法選擇器將根據(jù)功能分解器生成的功能模塊清單中每個具體的功能模塊,選擇相應(yīng)的測試方法,包括:等價類劃分測試法、邊界值分析測試法、因果圖法,以及支持用戶自定義的測試方法。所選用的測試方法將對應(yīng)功能模塊,標(biāo)識在功能模塊清單中。
[0015]進一步的,所述步驟4)還包括以下步驟:在測試方法選擇器標(biāo)識功能模塊清單后,將提交給測試用例生成器,測試用例根據(jù)功能模塊清單中的描述,檢索測試用例數(shù)據(jù)庫,如果檢索到符合條件的測試用例,便將測試用例的描述標(biāo)識在功能模塊清單中相應(yīng)的功能模塊。當(dāng)沒有檢索到合適的測試用例,測試用例數(shù)據(jù)庫將支持用戶的自定義編輯。
[0016]進一步的,所述步驟6)還包括以下步驟:首先,測試結(jié)果分析器將調(diào)用功能模塊清單,然后比對第一次測試后的測試結(jié)果和與預(yù)測的測試結(jié)