誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

Jtest 是 Parasoft 公司推出的一款針對 Java 語言的自動化代碼優化和測試工具,它通過實現對 Java 應用程序的靜態分析和單元測試,從而提高代碼的可靠性以及 Java 軟件開發測試團隊的工作效率。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

  Jtest安裝

  Jtest目前支持多個IDE,例如Eclipse、IntelliJ、NetBeans,大家可以根據自己的使用需求進行選擇。本文將以Eclipse為例,介紹這款優秀的Java代碼優化及測試工具。

  1、將Jtest安裝包下載至本地,打開Eclipse,選擇Help->Install New Software,如圖1所示。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖一

  2、點擊Add->Archive,選擇Jtest安裝包,如圖2所示。

  3、安裝完成,重啟Eclipse。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖二

  Jtest配置

  1、在Eclipse中選擇Window->Preferences

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖三

  2、選擇Parasoft,可對以下內容進行相關配置,如圖4所示。一般來說,License為必選項,配置完畢後方可使用,其他內容為可選項。其中,DTP是一個完整的軟件開發管理平臺,可以用來接收報告、審查任務、分配任務到Jtest。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖四

  靜態分析

  靜態代碼分析是指不運行源程序,僅通過分析源程序的語法、結構、接口等來檢查程序正確性,找出代碼隱藏的缺陷之處。Jtest支持模式匹配分析、流分析、重複代碼分析、度量指標分析四種分析模式。

  1、選中Java文件,點擊Parasoft->運行"Recommended Rules",如圖5所示。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖五

  2、運行完成後,勾選生成報告,配置相關信息。報告自動在Eclipse窗口中打開,分析結果可在Findings窗口中查看,其他詳細信息可查看Parasoft Jtest 報告,如圖6所示。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖6

  3、Jtest 不僅支持基於其默認的代碼檢查配置進行靜態代碼檢查,同時還支持用戶定製代碼檢查配置甚至自定義編碼規則,這一功能使得開發人員可以基於不同場景定製所需要的編碼規範,如圖7所示。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖7

  4、右鍵選擇Java文件,選擇Jtest測試方式。運行完畢後,可在Coverage窗口中查看代碼行覆蓋率,左側綠格為已覆蓋的行,紅格為未覆蓋的行,如圖7所示。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖8

  單元測試

  Jtest能夠自動生成測試用例,對驅動程序進行單元測試,並且Jtest 在首次測試一個或一組類時自動保存所有的測試輸入和設置,當需要執行迴歸測試時,只需選擇測試項目,即可重複執行原有的測試用例。

  1、在Java文件中雙擊類或方法名,Unit Test Assistant 將會顯示可以對其進行的操作,如圖8所示。點擊相應按鈕,為類或方法添加測試用例,填寫完相關配置信息,則生成對應的Test文件。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖9

  2、Jtest支持參數化的單元測試用例,同上在Unit Test Assistant窗口中進行操作,可以根據需要修改生成的參數化測試用例默認值,如圖9所示。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖10

  3、在Unit Test Assistant窗口中可運行自動生成的Test文件和ParameterizedTest文件,並在JUnit窗口中查看運行結果,在Coverage窗口中查看代碼行覆蓋率,如圖10所示。

誰說Java要過時?Parasoft Jtest:Java代碼優化及單元測試實戰

圖11

  4、此外,Unit Test Assistant可以為Spring 組件創建和執行標準Junit測試,也可以運行運用Spring測試框架的Spring集成測試。

  總之,Jtest是一款優秀的Java代碼優化及單元測試工具。對於開發人員,Jtest能夠自動檢查並糾正這些隱蔽且難以修復的編碼錯誤,使得開發團隊顯著減少在逐行檢查和調試代碼上花費的時間。對於測試人員,通過結合單元測試和代碼覆蓋率,可以為測試人員的用例編寫提供指導,一是保證測試用例全面,不會遺漏關鍵分支路徑;二是保證不會編寫大量冗餘的測試用例,真正做到提高測試效率和測試質量。

我是一名從事了多年軟件測試的老測試員,今年年初我花了一個月整理了一份最適合2020年學習的軟件測試學習乾貨,可以送給每一位對軟件測試感興趣的小夥伴,想要獲取的可以關注我的頭條號並在後臺私信我:【測試】,即可免費獲取。


分享到:


相關文章: