ERP項目工程應該如何進行驗收測試

軟件測試是爲了發現錯誤而執行程序的過程。它不僅是軟件開發階段的有機組成部分,而且在整個軟件工程(即軟件定義、設計和開發過程)中佔據相當大的比重。軟件測試是軟件質量保證的關鍵環節,直接影響着軟件的質量評估。軟件測試不僅要講究策略,更要講究時效性。驗收測試作爲軟件測試過程的最後一個環節,對軟件質量、軟件的可交付性和軟件項目的實施週期起到"一錘定音"的作用。

  一、ERP驗收測試的現狀

  驗收測試是一種有效性測試或合格性測試。它是以用戶爲主,軟件開發人員、實施人員和質量保證人員共同參與的測試。ERP(企業資源規劃)作爲提高企業管理創新能力的有力工具,其定義、設計、開發、實施和應用的過程遵循一定的規律。這些規律表現在軟件過程控制、質量保證和軟件測試等方面。驗收測試關係到ERP能否成功驗收,能否平滑步入維護期,能否快速實現效益。ERP驗收測試的全面性、效率性、科學性、規範性、徹底性在廣大製造業企業和ERP軟件供應商中還是一個嶄新的話題。

  當前很多人對ERP驗收測試工作存在一些誤解:

  (1)由於ERP軟件的複雜性、規模性,人們可能更多地關注它多變的需求定義、個性化解決方案、定製化開發過程,卻輕視了項目的驗收工作。這些"只重視開題和過程,不重視結題和維護"的做法,最直接的後果就是,形成了一個個延期工程或"爛尾"項目。

  (2)ERP實施工作做好了,用戶企業可以把系統跑起來了,文檔移交了,客戶簽字了,還有什麼必要做驗收測試。這種誤解源於對驗收測試的目的、流程、方法和意義缺乏認識。

  (3)驗收測試是用戶企業的事,與軟件服務提供商無關。事實上,只有兩者密切配合,才能提高測試效率。

  (4)將驗收測試理解成給用戶做演示。驗收測試要講究策略,不是走走過場,而是有計劃有步驟的執行活動,要進行科學的用例設計。

  (5)驗收測試就是驗證軟件的正確性。驗收測試和其他的測試一樣,既要驗證軟件的正確性,又要發現軟件錯誤。只不過,驗收測試是以確認軟件功能是否滿足需求爲主。

  二、ERP驗收測試的流程及方法原則

  軟件包括程序、數據和文檔。ERP驗收測試的對象應當含蓋這三個方面。驗收測試的主體要以用戶企業爲主,ERP軟件服務供應商積極配合;或以第三方測試爲主,用戶和軟件供應商共同配合。

  軟件實施人員要適時配合和敦促用戶做好驗收測試的各項準備工作,按計劃按步驟執行驗收測試,形成規範的測試文檔,客觀地分析和評估測試結果,並跟蹤不合格現象,對軟件問題要分級分類管理,必要時要進行迴歸測試,確保所有問題能得到關閉,最終成功通過驗收。

  在測試方法上,由於驗收階段的特殊性,一般以黑盒測試和配置複審爲主,以自動化測試和特殊性能測試爲輔,用戶、軟件開發實施人員和質量保證人員共同參與。

  ERP驗收測試要注意以下幾個原則問題:

  (1)驗收測試始終要以雙方確認的ERP需求規格說明和技術合同爲準,確認各項需求是否得到滿足,各項合同條款是否得到貫徹執行。

  (2)驗收測試和單元測試、集成測試不同,它是以驗證軟件的正確性爲主,而不是以發現軟件錯誤爲主。

  (3)對驗收測試中發現的軟件錯誤要分級分類處理,直到通過驗收爲止。

  (4)驗收測試中的用例設計要具有全面性、多維性、效率性,能以最少的時間在最大程度上確認軟件的功能和性能是否滿足要求。

  三、ERP驗收測試的內容及用例設計

ERP驗收測試的目的是確認系統是否滿足產品需求規格說明和技術合同的相關規定。通過實施預定的測試計劃和測試執行活動確認軟件的功能需求、性能需求和文檔需求。ERP是較複雜的大規模性軟件,其驗收測試應當涵蓋確認測試和系統測試兩個方面的內容。具體包括以下測試內容:安裝測試、功能測試、界面測試、性能測試、文檔測試、負載壓力測試、恢復測試、安全性測試、兼容性測試等。下面結合ERP驗收測試的具體內容,談談用例設計的注意事項。

  (1)安裝測試

  安裝測試的目的在於驗證軟件能否在不同的配置情況下完成安裝,並確認能否正常運行。ERP安裝測試的用例設計要注意以下幾點:

  第一,根據ERP的可移植性,選擇不同操作系統。

  第二,選擇不同層次的硬件配置和軟件配置,一般選用最低、中等和最高三種配置進行測試,驗證系統對軟硬件環境的依懶性。

  第三,觀察ERP安裝程序在軟硬件資源充足的情況下能否正常安裝,安裝過程中是否給予充足的提示,是否存在流氓軟件的一些弊病,安裝完成後能否正常運行,能否徹底刪除。

  第四,在資源不充沛的情況下,如磁盤空間不夠、內容不足等,系統能否完成安裝,能否給予各種提示。

  (2)功能測試

  功能測試是驗收測試中的主要內容。ERP功能測試要包含以下項目:單個模塊的查詢、增加、刪除、修改、保存等操作;數據的輸入與輸出;數據處理操作,如導入、結轉等;基礎數據定義的精度;計算的準確性,如倉庫的歷史庫存、當前庫存、貨位庫存是否準確;數據共享能力;身份驗證和權限管理;接口參數和系統控制參數;單據流轉情況;狀態控制,如系統是否對MPS在執行MRP分解、工單下達、車間任務調度等操作前後的狀態做了標識,狀態的改變是否正確;報表的打印輸出;審批流程定義及各種審批、反審批操作;短信發送及管理;崗位及部門業務的操作,如從請購管理、採購計劃到採購訂單管理,再到採購到貨管理;跨部門的業務操作,如從銷售訂單到主生產計劃,從車間領料到倉庫出庫等等。

  ERP功能測試的用例設計要注意以下幾點:

  第一,測試項目的輸入域要全面。要有合法數據的輸入,也要有非法數據的輸入。如,在測試基礎數據的定義時,若規定是數字,則既要輸入數字進行測試,也要輸入字母、空格等非數字進行測試。數字包含整數、負數、小數,因而還要輸入這些不同的數字驗證數字的精度。

  第二,劃分等價類,提高測試效率。在考慮測試域全面性的基礎上,要劃分等價類,選擇有代表意義的少數用例進行測試,提高測試效率。如,若MRP記錄有"剛形成"、"已派工""正執行"、"已完成"四種狀態,系統只允許對剛形成的MRP記錄做局部性修改或刪除操作,那麼在測試時,將MRP記錄劃分爲四類,每種狀態對應一類,每類各選一條記錄作爲測試用例即可。

  第三,要適時利用邊界值進行測試。如"訂單預排"中一般要求預排的數量大於0,那麼測試數據可以分別爲0,-1,1,10000000(一個非常大的正數)。

  第四,重複遞交相同的事務。

  第五,不按照常規的順序執行功能操作。

  第六,驗證實體關係,實體間的關係有三種:一對一,一對多,多對多。如,一個MPS對應多個MRP,一個MRP對應多個車間任務。

  第七,執行正常操作,觀察輸出結果的異常性。如,刪除某條記錄對排序的影響;執行審批後,單據的狀態是否改變。

  (3)界面測試

  ERP界面要符合現行標準和用戶習慣。軟件企業可以形成自己的特色,但要確保整個軟件風格一致。界面測試要從友好性、易操作性、美觀性、佈局合理、分類科學、標題描述準確等方面入手。測試用例的設計要重點掌握以下幾點:

  第一,背景和前景的顏色是否協調,顏色反差是否用得恰當。

  第二,軟件得圖標、按鈕、對話框等外觀風格是否一致,美觀效果所要求的屏幕分辨率。

  第三,窗口元素的佈局是否合理,並保持一致。

  第四,各種字段標題的信息描述是否準確。

  第五,快捷鍵、按鈕、鼠標等操作在軟件中是否一致。

  第六,窗口及報表的顯示比例和格式是否能適應用戶的預期需求。

  第七,誤操作引起的錯誤提示是否友好。

  第八,活動窗口和被選中的記錄是否高亮顯示。

  第九,是否有幫助信息,菜單導航能否正常執行。

  第十,檢查一些特殊域和特殊控件能否運行。

  (4)性能測試

  性能測試主要測試軟件的運行速度和對資源的消耗。通過調整ERP所依賴的軟硬件配置、網絡拓補結構、工作站點數、數據量和服務請求數來測試軟件的移植性、運行速率、穩定性和可靠性。一般藉助WinRunner之類的企業級自動化測試工具來輔助測試,通過極限測試來分析評估軟件性能。

  (5)文檔測試

  文檔是軟件的重要組成部分,也是軟件質量保證和軟件配置管理的重要內容。文檔測試主要通過評審的方式檢查文檔的完整性、準確性、一致性、可追溯性和可理解性。ERP作爲一個大規模軟件,覆蓋了企業的各種業務。它至少要具備需求定義、開發設計、測試評估、項目管理、用戶應用這五類文檔,具體而言,應包含GB8567-88中規定的14種軟件文檔。

  在文檔複審時,要特別注意以下幾點:

  第一,要明確文檔驗收的標準,軟件企業和用戶企業要達成一致。

  第二,確定文檔的重要性和項目文檔需求,比如,在驗收階段,用戶文檔(用戶手冊、操作手冊、維護手冊、聯機幫助文件)顯得特別重要,需要認真評審。

  第三,檢驗文檔完整性,主要是文檔的種類和內容的完整性。

  第四,檢驗文檔的一致性和可追溯性,主要是:軟件的設計描述是否按照需求定義進行展開的;應用程序是否與設計文檔的描述一致;用戶文檔是否客觀描述應用程序的實際操作;關於同一問題的描述是否存在不同的說法。

  第五,檢驗文檔的準確性,主要是文檔的描述是否準確,有無歧義,文字表達是否存在錯誤。

  第六,檢驗文檔的可理解性,主要審覈文檔是否針對特定的讀者羣體,表達是否詳細。如,ERP操作手冊,除了描述每個模塊的操作,應該還提供關聯性崗位業務、部門業務和跨部門業務的操作說明。

  (6)其他測試

  除了上述的測試外,還有必要對系統的其他特性和需求加以測試。如檢測軟件遇突發性故障後對數據的恢復能力,軟件的安全保密性和對硬件、軟件、數據的兼容性,系統所能承擔的最大數據量和健壯性等。

  其他測試一般包含以下幾種:

  第一,負載壓力測試。它主要包括併發性能測試、疲勞強度測試、大數據量測試和速度測試。一般採用自動化技術分別在客戶端、服務器端和網絡上進行測試。用例設計時,要以真實的業務爲依據,選擇有代表性的、關鍵的業務操作作爲測試對象。

  第二,恢復測試。通過模擬硬件故障或故意造成軟件出錯,檢測系統對數據的破壞程度和可恢復的程度。

  第三,安全性測試。通過非法登陸、漏洞掃描、模擬攻擊等方式檢測系統的認證機制、加密機制、防病毒功能等安全防護策略的健壯性。

  第四,兼容性測試。通過硬件兼容性測試、軟件兼容性測試和數據兼容性測試來考察軟件的跨平臺、可移植的特性。

  四、結語

  ERP用戶和軟件開發實施人員要明確驗收測試的真正意圖。開發人員和實施人員不應該掩蓋軟件錯誤或不關心用戶不熟悉的測試項目。用戶也不能因爲存在一些當前無法實現的需求而擱置驗收工作。相反,兩者應當精誠合作,相互信任,撥雲見日。對於那些不可行的需求或不明確的需求,雙方要協商進行需求變更,並達成一致意見。只有這樣的驗收測試,才能促使ERP工程項目得以快速圓滿驗收。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章