0 引言
隨著科技的發展和技術的進步,當今社會各個行業的運營和管理都離不開計算機軟件。應運而生的問題是如何才能保證軟件產品的質量。事實上,軟件測試是獲得高質量軟件產品的重要保證。
1 軟件測試的概念
軟件測試是根據軟件開發各個階段的規格說明和程序內部結構而精心設計的一組測試數據,并利用這些數據運行程序,以發現程序錯誤的過程。根據測試數據設計方法,軟件測試可分為結構測試和功能測試。在結構測試過程中,測試者對程序的語句、分支和邏輯路徑進行各種覆蓋測試,可以在不同點檢查程序的狀態,以確定實際狀態與預期狀態是否一致。
2 B/S結構的ERP系統特點和難點
早期的B/S結構Web應用系統使用的技術有限,但隨著網絡技術的發展,B/S的結構越來越復雜,出現了很多的框架和設計模式。各種技術不斷地推陳出新,HTML、ASP、JSP、JavaScript、XML、CSS以及現在使用廣泛的Struts、Hibernate、Spring 框架。同時,B/S結構的系統規模也在不斷地擴大,系統的性能以及安全性也成為B/S結構的主要問題。
ERP管理軟件不同于其他的應用軟件。它是一個以管理會計為核心的信息系統,用于識別和規劃企業資源,從而獲取客戶訂單,完成加工和交付,最后得到客戶付款。由于涉及企業的財務、人力資源、采購途徑等敏感信息,所以,ERP軟件對精確性和安全性要求都很高。
鑒于B/S結構和ERP管理軟件的特點,應用對基于B/S結構的ERP系統提出了很高的要求。由于互聯網的不安全性和ERP系統的高安全性相悖,所以基于B/S結構的ERP系統應該采用安全超文本傳輸協議(HTTPS)。實際上,HTTPS就是應用了Netscape 的完全套接字層(SSL)作為HTTP應用層的子層。SSL使用40位關鍵字作為RC4流加密算法,這對于商業信息的加密是合適的。B/S結構的系統對程序的健壯性也有很高要求,當互聯網爬蟲軟件截獲數據或者修改數據時,一般都要求程序應該能及時地做出反應。
3 軟件測試
軟件開發的每個階段都需要測試,根據行業的需求來判定需要在哪個階段開始測試。對于ERP這種行業應用軟件來說,盡可能早測試對以后實際開發有很大幫助。在學習和概念階段就應該開始進行自我測試,這個階段的測試沒有明確的測試標準,需要做的是了解該行業的知識、專業術語、基本業務流程。要多方面考察驗證,來增加自己對該行業的了解程度。這就是一個簡單的測試過程。
需求分析階段的測試比學習和概念階段測試更為重要。學習階段只是學習該領域的知識,是主動性地獲取知識的過程。而需求分析階段則需要和客戶討論商量,客戶要求實現符合自己公司業務的功能,具有特殊性,有些普遍性的復雜浪費資源的功能可能還會去掉。因此,與客戶的交流溝通非常重要,這一階段必須反復進行測試,多與客戶溝通。由于語言的歧義性可能就會對軟件帶來致命的影響,因此為保證客戶所提功能都能被實現,要把所理解的客戶需求的功能文檔化,再提交給客戶進行修正。對于需要量化的功能和結構,應該給出具體的數字。經過幾次如此反復的修正測試,功能需求大致就可以達到客戶的預期了。
開發期包括系統設計階段以及系統實現階段,這一階段的測試至關重要,直接關系到軟件產品的成敗。系統設計必須是有經驗的項目帶頭人,對系統結構和功能非常清楚,必須完成客戶需要的每個功能,以及協調功能的實現部分。這部分需要反復對照需求分析,如遇到不清楚的問題,必須重新聯系客戶確認,這也是一種測試過程。當系統經過編碼階段之后,就需要大規模的測試來驗證客戶的一系列需求。測試用到的主要方法是黑盒測試和白盒測試。
黑盒測試就是把系統看成一個黑盒,從外界取得輸入,然后再輸出。整個測試過程根據需求文檔,看程序是否實現了需求文檔中所要求的功能。黑盒測試比較簡單,測試者不需要關注程序內部的具體實現,主要適用于對系統功能進行測試。
黑盒測試的優點:一是簡單易懂,不需要了解程序內部的代碼及實現;二是與軟件內部實現無關;三是從用戶的角度出發,能夠很容易知道用戶會用到哪些功能,會遇到哪些問題;四是基于軟件開發的需求文檔,其測試功能需求很準確;五是實現軟件自動化測試較為方便。黑盒測試的缺點主要是不能覆蓋所有的代碼,大概只能達到總代碼量的30% ;另外就是自動化測試的復用性較低。
白盒測試則是按照程序實現的代碼來測試代碼實現的功能。白盒測試常用的測試方法有語句覆蓋、分支覆蓋、條件覆蓋、路徑覆蓋,還有一些其他基于結構的測試技術等。
白盒測試的直接好處是能知道所涉及的測試用例在代碼級上哪些地方可以被忽略掉,它的優點是幫助軟件測試人員增大代碼的覆蓋率,提高代碼的質量,發現代碼中隱藏的問題。但是,白盒測試也有一些缺點:首先是程序運行會有很多不同的路徑,不可能測試所有的運行路徑;其二是測試基于代碼,只能測試開發人員做得對不對,而不能知道設計得正確與否,因而可能會漏掉一些功能需求;其三是在系統比較龐大時,測試開銷會非常大。
根據B/S結構的ERP系統的特點,在進行黑盒測試和白盒測試的過程中,除了需要滿足系統設計的基本要求外,根據實際開發測試,可以得到以下幾點非常重要且容易被忽略的經驗:
3.1 頁面的測試
系統內包含著大量的HTML 代碼,不規范的代碼會帶來安全問題,加之目前市場上瀏覽器種類繁多,即使同一瀏覽器也有不同的版本,可以選用頁面檢查工具來檢查HTML語法,還可以使用一些自動化的測試軟件來抽取連接地址、框架、CSS等內容。根據測試結果,可以找出一些冗余孤立的頁面,然后進行進一步處理。
3.2 頁面內容和控件的測試
頁面內容一般指的是頁面上的說明文字、圖標等提示客戶正確輸入的指示內容,這些內容的確認只能人工檢測,確保這些提示性的語言文字不會出錯?丶话惆ǹ奢斎牒涂蛇x擇兩種,就是常說的文本框和下拉框。文本框測試比較復雜,包括測試長度(檢測能輸入的最大長度和最小長度)、類型測試(數字、大小寫英文、空格、特殊符號、漢字以及日語中的全半角數據)、格式測試、邊界測試等;下拉框的測試則需要保證下拉的內容是否完整,是否涵蓋了客戶要求的所有可選的項目,以及選擇該項目后其他項目是否隨之聯動。頁面測試還需要注意快捷鍵的測試,如常用的Tab、Enter鍵,保證在按下此鍵時選擇框會隨之遷移。
3.3 數據庫數據一致性的測試
要保證數據庫中數據和畫面表示一致,由畫面錄入的數據能正確地在數據庫中呈現,數據庫中的數據也能在頁面正確地表示,不會出現數據錯位、截斷、丟失的情況。一般來說,如果表格設計正確數據就會是一致的,最可能出錯的情況是開發過程中修改數據庫字段長度或頁面錄入長度時,沒有同步修改對應的頁面或數據庫,這樣就會出現多錄入的部分數據存不到數據庫中,或是從數據庫取出的數據不能完整地在頁面上表示。還需考慮數據庫表的關聯性問題,如一個頁面輸入的項目要同時存放的幾個表中,當頁面項目變更時,往往會漏掉其中某些表。
3.4 數據和單據測試
ERP軟件中肯定會涉及到數據的計算,數據運算的精度非常重要,要根據客戶的需求合理地設計運算的精度,到最后一位是四舍五入還是截斷都要由客戶需求的精度來決定。雖然看起來是一個很小的問題,但如果數據量非常大的話,就會造成很大的誤差,這些貨品入出庫或錢財的損失是不可估量的。單據的測試更為復雜,未分配權限的操作者不可以做相應的業務單據,分配權限的才可以做權利允許范圍內的操作。單據表頭部和表體部顯示的問題,表頭的位置、大小以及是否和表體相關都需要進行測試,表體的內容是否會出現覆蓋擠壓在一起的狀況、單據表體項目的各種操作和算法測試也是我們需要關注的?刂茊螕敵龅陌粹o也需要測試其預覽、輸出、打印的功能,這里需要注意的是輸出單據的分頁、打印是否正確。尤其要注意的一點是,對于一些已經有表格的打印紙,只需要我們打印進去內容的時候,需要仔細確認打印位置是否正確。單據測試還涉及單據之間關系測試,包括單據之間參照生單測試、單據之間的控制測試及單據聯查等。
3.5 性能測試
性能是用戶對軟件產品是否滿意的一個重要因素。一般采用的方法是手工測試、在程序中插入代碼來計算時間和瓶頸測試。手工測試就是開始運行程序后,通過工具記錄開始和結束時間。這種方法工作量比較大,一般適用于較少測試的情況,如進行了SQL優化。插入代碼來計算時間,這種方法工作量也比較大,而且本身插入的測試代碼可能會影響到程序的性能。瓶頸測試是用得比較多的方法,關鍵點是找到系統的瓶頸,主要對其進行測試,統計平均的系統響應時間、操作成功率等,還要對瓶頸處進行壓力測試來驗證系統的可靠性和能夠提供的最大的服務限制。
軟件維護時期的測試顯得格外重要,往往是客戶使用了軟件一段時間后覺得和其需要的功能有所區別,要求提出修改。這些修改往往是小修改,不會影響軟件的主要功能。因此,當修改了一部分代碼的時候要求不影響系統的主要功能,簡單來說是修改少、測試多。這跟程序的健壯性有很大的關系,如果系統設計比較規范,維護起來也比較容易。這一階段重點是和客戶溝通好,確保在最少的改動的情況下能滿足客戶的要求,然后分析修改的代碼可能影響到的功能,主要進行修正點測試以及正常系測試,需要比較一些單據,可以使用VBA編程來進行測試。尤其要注意的問題是,管理好每次修正的版本,以便下一次修正時使用。
4 結語
軟件的發展使得測試的規模在不斷地變大,測試也越來越專業化、產業化。近些年涌現出了大量的自動化的測試軟件,大大地提高了測試效率。大部分公司都采用自動化的測試工具,但是自動化的程度都不高,可見自動化的測試工具還只是輔助的工具。對于ERP軟件來說,測試正確性要求極高,畢竟自動化測試軟件也是軟件,其正確性也難以保證,所以對于單據測試還是有針對性地編寫自己的測試程序更為準確。相信隨著技術的發展,自動化測試離我們并不遙遠,測試中繁瑣的工具將由測試軟件來完成,測試人員只需要指定高效快捷的測試方案即可。
轉載請注明出處:拓步ERP資訊網http://www.lukmueng.com/
本文標題:B/S結構ERP管理軟件的測試方法研究
本文網址:http://www.lukmueng.com/html/consultation/10820610904.html