胡雙
摘 要:隨著科學技術的不斷發展,Java技術得到了人們的廣泛關注,如何提高Java應用程序成為當前保障測試軟件質量的重要基礎,為提高軟件的可靠性提供了基礎性的條件。人工進行單元測試呈現出費時和繁瑣的情況,而自動化的單元測試能夠在一定程度上實現軟件開發成本的節約,成為提高軟件可靠性的重要手段。因此,提高Java應用程序單元測試中的自動生成測試數據和自動化程序是當前Java平臺單元測試技術的重點。
關鍵詞:Java平臺;單元測試;數據;技術
Java自身具有安全、可靠和高性能的特點,是一項重要的編程語言,在網絡環境和分布式環境中被廣泛應用。Java作為當前重要的網絡語言,在各個領域中被廣泛應用,但是在Java的軟件開發過程中不能忽略測試的環節,通過面向對象編程的形式實現了對消息的傳達,并且在不同的生命周期內會呈現出不同的狀態,因此,軟件測試得到了業界的廣泛關注。實踐表明,在軟件的開發階段應該對各個時期的軟件開發周期進行測試,以便能夠及時發現存在的故障,降低軟件開發的成本。
1 Java平臺單元測試技術的現狀
當前,Junit已經成為單元測試的事實標準,在Java的集成環境開發中形成了Junit。程序人員能夠進行測試案例模板的生成,但是相關的數據信息需要程序人員自行進行設計。此外,Junit也實現了自動測試框架,能夠在不同程度上對程序員的自動化單元測試程序進行開發。Junit作為一個集成的Java單元測試工具,有效地增強了代碼的穩定性能,避免了軟件錯誤現象的出現。
2 基于Java平臺的單元測試數據
2.1 契約自動生成測試數據
對于測試方法中的參數,需要對等價的類型和邊界進行合理的劃分,在測試過程中需要對滿足測試要求的數據進行挑選。通過對工農業生產領域的研究來看,為了保證實驗的科學性和合理性,應該對實際的情況進行了解,采用最優的實驗設計和統計實驗的形式對實驗方法進行安排。通常,實驗者會在做實驗的過程中,選擇具有代表性的水平組合進行實驗,運用均衡性對部分水平組合進行挑選,實現了各個因素之間的均衡搭配,以便獲取滿足測試要求的數據集。通過實驗研究可知,正交設計采用了從左至右的設計方法,從上而下的元素能夠充分地展現出對應參數的水平值。因此,應該根據正交設計或者均勻設計的形式表現設計測試方法參數取值組合,從而更好地表現生成測試的數據。
2.2 遺傳算法自動生成測試數據
遺傳算法主要應用于數據測試中,除了確保生成測試能夠取得良好的效果,在問題編碼時不能只局限于二進制的編碼方式,應該運用賦值和交叉的形式將編碼施加于種群的個體上。為了計算出種群的個體適應度,應該將種群的個體解碼變成測試程度的輸入形式,對程序的執行情況進行實時監控。
3 Java平臺單元測試技術
3.1 基于Junit自動生成測試案例模板
當前,Junit已經成為Java程序單元測試框架的主要參考標準,應該對自動化測試工具進行擴展,程序員需要對生成的測試框架添加測試數據,以便獲取一個較為完整的測試案例。Jtest在測試工具中具有單元測試的功能,能夠對靜態和動態的測試實現自動化的功能,應該依靠人工的形式對子類的對象進行訪問,或者依靠人工的形式對對象中涉及的內容進行訪問,降低了程序員測試的效率。
同時,Liskov替代原則在替代超類型行為的過程中會產生意想不到的效果,在實際的運用過程中具有兼容性,既可以運用子類類型的形式進行使用,又可以視作超類型方式進行使用。Java主要由構造器和實例方法等共同構成,在接口實現的過程中主要包含接口契約的對象,能夠對對象的類型和行為進行有效的規范,避免在運行過程中產生類型錯誤的現象。因此,為了實現保持類型行為的兼容性,必須要在計算時建立一個求精演算的過程,實現違背測試類型的兼容性。
3.2 基于Java平臺單元測試原型工具的實現
Java平臺單元測試具有覆蓋分析功能,主要應用于代碼的覆蓋測試,在測試過程中,主要是根據二進制中的文件對相關的應用指令進行添加,并結合Junit和Jcoverage能夠對測試的代碼進行覆蓋,并對測試中的語句進行測試和執行,通過對這些信息的了解能夠明確代碼的測試質量,并實現對測試語句的覆蓋,在測試執行的過程中能夠通過對語句的收集工作,對覆蓋的信息進行分支,對計算的結果進行報告,對數據的結果進行分析和評估。
在用戶界面的選擇設計上,應該將菜單和圖標等元素作為人機交互接口的重要組成部分,主要負責對用戶界面相關操作的處理,應該對操作的過程進行捕捉,并觸發相應的操作。在文件處理過程中,應該對打開的Java類軟件進行測試,并創建測試類的案例文件,并實現對案例文件的保存,在打開測試類Java文件的過程中并沒有獲得打開文件路徑的方式,打開的內容會在Window的文本區中進行顯示,需要進行模塊處理。
4 結論
Java程序的單元測試是程序員在進行軟件開發過程中必須要完成的一項工作內容,可以對產生的故障問題進行方法調用。由于面向的對象具有增量的特點,應該對設計好的測試代碼進行重新構建,并且主要的工作內容也需要依靠人工來完成,有效地避免了自動化單元測試中存在的不足。通過本文的敘述,解決了Java平臺上的單元測試問題,對測試的內容進行了完善。因此,在未來的發展中,還需要對測試的工具進一步完善,促進Java平臺單元測試技術的發展。
參考文獻
[1]孫麗紅.基于輕量級Java EE的高校在線投票系統的設計與實現[D].吉林大學,2012.
[2]蒲昊.基于Http反向代理的Web動態適配平臺的設計與實現[D].西安電子科技大學,2014.
[3]張建飛.研發與應用平臺測試方案的研究與技術實現[D].北京交通大學,2012.