彭麟 季帥 劉芳







摘 要:本文基于某高職院校的學生成才綜合信息管理系統的測試需求,提出了系統的測試任務及目的,確定了相應的測試方法與環境,并對系統的功能與性能進行了測試分析,為系統功能的優化與交付使用提供了保證。
關鍵詞:信息管理系統;測試需求;功能測試;性能測試
根據IEEE在1983年的軟件測試技術會議上的定義,軟件測試是使用人工或自動手段運行或測定某個系統的過程,其目的在于檢驗它是否滿足規定的需求或是弄清楚預期結果與實際結果之間的差異[1]。由此可見,測試是為了檢驗軟件是否滿足應用需求,它是一個需要經過設計、開發和維護等完整階段的過程。為此,需要將軟件測試與軟件開發相融合,并貫穿于軟件設計開發過程中的每一個階段。而從軟件測試的流程來看,軟件測試需要經歷分析測試需求、制訂測試計劃、設計測試用例、執行測試、以及編寫測試報告五個階段,其中設計測試用例是重點。測試用例(Test Case)指的是一套詳細的測試方案,包括測試環境、測試步驟、測試數據和預期結果[2]。其編寫的基本原則是盡量以最少的測試用例達到最大測試覆蓋率。針對學生成才綜合信息管理系統的測試需求,本文件從測試任務及目的、測試方法與環境、測試方案的實施及測試結論幾方面進行了闡述。
一、系統簡介及測試需求的提出
為實現全方位全過程跟蹤指導、記錄學生的成才過程,我校利用信息化手段、流程化方式構建了“433”學生成才綜合信息平臺。系統分為學生、教師和管理員3級用戶,通過不同的用戶身份登錄平臺,學生主要實現“433”成才信息的提交、查看、更新等功能;教師主要實現學生成才信息的審核、分析、匯總與反饋;管理員主要實現系統用戶與基礎數據的管理。
為了驗證該學生成才綜合信息管理系統設計開發結果的正確性、易用性、穩定性,將其軟件測試的任務分為三方面工作:一是發現軟件系統中的漏洞,即通過測試發現軟件系統中存在的問題;二是驗證軟件產品是否滿足用戶的需求;三是檢測平臺的性能指標以及在高負載情況下系統的響應速度。由測試任務可見,系統測試的目的主要有三個方面:一是找出缺陷及故障;二是驗證軟件功能是否能正確實現;三是衡量系統的性能參數是否滿足用戶要求。為此,本系統不僅在軟件開發階段進行了單元測試,即功能性測試,而且在系統整體開發接近完成的時候,對系統進行了集成及性能測試。
二、測試方法與環境
(一)系統功能測試方法
對于功能性測試,按照使用的軟件測試技術的不同,可以將軟件測試分為黑盒測試和白盒測試。黑盒測試從用戶觀點出發,被用來確認軟件功能的正確性和可操作性[3]。其測試用例主要按照規格說明書設計,設計過程并不涉及程序內部構造和內部特性,只依靠被測程序輸入和輸出之間的關系。由于黑盒測試與軟件的具體實現過程沒有關系,所以,在軟件實現的過程發生改變時,其測試用例仍然可以使用;且黑盒測試用例的設計與軟件實現可以同時進行,因而能夠節約開發時間。與黑盒測試相對的是白盒測試,主要用來分析程序的內部結構,所以對某些程序的結構特性要做到一定程度的覆蓋,測試人員對軟件模塊內部的代碼邏輯、路徑與運行過程也要有一定的了解。針對“433”學生成才綜合信息管理系統的功能測試,本文采用了黑盒測試方法。
(二)系統性能測試方法
如果說功能測試主要檢驗軟件系統能否正確使用的問題,那么性能測試則主要檢驗軟件系統是否易用、好用的問題[4]。如軟件產品是否足夠穩定、響應速度是否足夠快、在用戶量較大時是否會出現崩潰或卡頓現象。這就要求性能測試不但需要系統實現要足夠準確、足夠快速,而且需要一些性能指標來進行衡量,常用的指標有響應時間、吞吐量、并發用戶數、TPS等。另外,性能測試包含多種類型,主要有負載測試、壓力測試、并發測試、可靠性測試等。為了實現上述性能測試,提高性能測試的效率,人們開發出了許多性能測試工具,常用的有LoadRunner和JMeter。由于“433”學生成才綜合信息管理系統是基于B/S結構的網絡應用程序,所以著重進行了系統負載測試、壓力測試和并發測試。使用的測試工具為LoadRunner12.55_Community_Edition英文版。
(三)系統測試環境
根據需要保證系統的測試環境和最終的實際運行環境要保持盡可能一致,避免環境變化導致測試結果出現偏差的基本原則。本系統的測試環境為真實運行環境的模擬,測試的軟、硬件環境和網絡環境如表1所示。
三、系統測試方案
在開發“433”學生成才綜合信息管理平臺過程中,對系統中的每一個功能模塊都進行了相應的功能測試,并且在完成整個系統后進行了性能測試,在測試過程中對于發現的問題已經及時更正。
(一)系統功能測試方案
測試用例是根據軟件開發各階段的要求和程序內部結構、為特定的目的而設計的一組輸入、運行條件和預期結果,它是執行測試的最小實體。測試用例的設計是保證軟件質量的關鍵步驟。根據本系統測試需要,測試人員首先利用黑盒測試方法對每個功能模塊設計了相應的測試用例,然后根據設計好的測試用例,從使用功能角度對核心模塊的功能點進行逐一測試,以驗證系統功能的正確性,并形成測試報告。如系統登錄、433助力活動、433新聞報道、433成才指南、433成果申報與審核等。以下選取幾個有代表性的測試用例及測試結果進行闡述。
1、用戶登錄功能模塊測試用例
用戶登錄功能模塊的測試目的主要有兩方面:一是檢測登錄頁面是否顯示正常;二是檢測用戶登錄的安全性,即對用戶登錄賬號進行測試,如果登錄用戶名及密碼有誤,則進行相應的提示。具體測試方案如表2所示。
2、成果申報功能模塊測試用例
成果申報功能模塊由于記錄信息較多,在設計開發過程中,為方便用戶的快速、準確的錄入,很多內容采取下拉式菜單式的錄入方式;而對于學校剛開學新生報到人數較多時,信息的錄入方式還可以采用模板導出,批量導入模板功能的實現,可以節省大量的時間和人力。經過測試單個錄入,以及以模板形式批量錄入順利進行,并且保存后數據不丟失,數據不篡改。具體測試方案如表3所示。
表3 成果申報功能模塊測試用例及測試結果
3、成果審核功能模塊測試用例
成果審核功能模塊主要面向教師用戶,該功能模塊的測試目的主要有兩方面:一是檢測成果審核頁面是否顯示正常;二是檢測頁面表格最后一列中的“通過”和“駁回”按鈕是否能實現正確的功能,并進行相應的提示。具體測試方案如表4所示。
(二)系統性能測試方案
在進行性能測試時,首先要確定性能測試的目的,然后根據性能測試目的制定測試方案?!?33”學生成才綜合信息管理系統采用B/S模式,需要訪問Web服務器及數據庫服務器,尤其是同時訪問數據庫服務器的用戶可能會很多,使得數據流量較大,容易出現性能瓶頸。這樣輕者會造成系統反應遲緩、用戶抱怨;重者將導致系統癱瘓。鑒于此,本性能測試主要針對頁面響應時間、系統并發用戶數量、服務器負載等項目進行測試。測試步驟如下。
(1)使用性能測試工具Loadrunner中的Virtual User Generator錄制腳本并保存;
(2)使用性能測試工具Loadrunner中的Controller設置場景,并保存場景;
(3)使用性能測試工具Loadrunner中的Analysis分析測試結果。
下面以學生登錄為例加以說明,其用例設計如表5所示。
而其測試場景如表6和表7所示。
經過基本的軟件性能測試,“433”學生成才管理系統能夠實現頁面相應刷新時間≤50ms,系統并發用戶數量不超過500個時正常運行,服務器CPU平均利用率≥26%,能夠滿足預期的用戶需求。
四、結束語
通過軟件測試與系統分析,本系統六大部分的功能基本正常,達到了預期的目的。
測試結果:該平臺經過黑盒測試,系統一切功能運行正常。
效率分析:系統對于用戶請求具有較快的響應,所有測試內容均能在2秒內完成,且沒有錯誤??梢哉J為效率較高。
可靠性測試:在整個測試過程中,系統運行良好,未出現錯誤。具有較高的可靠性。
對測試結果分析可得到以下結論:本系統實現了“433”學生成才綜合信息管理系統所需的基本功能,并且具有較好的人機界面、數據處理能力以及執行效率。
參考文獻:
[1] [2]黑馬程序員.軟件測試[M].北京:人民郵電出版社,2019.10.
[3]劉波.基于JAVA技術的交互式學生管理平臺設計與實現[D].電子科技大學,2014.
[4]王瑛.基于B/S結構的網上選課管理系統的設計與實現[D].江西財經大學,2017.