亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

首頁 慕課教程 Eclipse 編輯器教程 Eclipse 編輯器教程 Eclipse 使用 JUnit 進行單元測試

Eclipse 使用 JUnit 進行單元測試

1. 前言

通過前面章節的介紹,我們已經知道如何對我們的 java 代碼進行 Debug 了。

現在讓我們來介紹另外一個和調試相關的操作,就是使用 JUnit 單元測試框架進行單元測試。

對我們的程序進行 Debug 是為了找出程序出錯的地方,而使用 JUnit 進行單元測試除了驗證我們的代碼是否正確外,還有一個重要作用就是看代碼的編寫是否符合我們的業務邏輯需求。

我們將使用 JUnit 5 來介紹 JUnit 在 Eclipse 中的使用。本文不會對 JUnit 進行一個詳細的使用介紹,但為了第一次接觸 JUnit 的同學,讓我們先來看看 JUnit 的一個簡介。

2. JUnit 簡介

JUnit 起源于 1997 年,作為一個單元測試框架,至今已經 20 多年了,可以說有著較長的發展歷史。

JUnit 最初的版本是由兩位編程大師 Kent Beck 和 Erich Gamma 在一次飛行旅程中完成的,推出后一直備受 Java 開發者的青睞,所以其功能也只一直在演進。

JUnit 目前已經發展到了 5.x 版本,主要是為了當前主流的 Java 版本 JDK 8 以及更高的版本提供更好的支持 (如支持 Lambda 等) 和提供更豐富的測試功能 (如重復測試,參數化測試等)。

JUnit 5 這個版本是 JUnit 單元測試框架的一次重大升級,其架構也和以前的 JUnit 版本不同。

目前,JUnit 5 由三個不同的子項目構成:JUnit Platform + JUnit Jupiter + JUnit Vintage。

其中 JUnit Jupiter 包含了 JUnit 5 中新的編程模型和擴展模型,主要就是用于編寫測試代碼和擴展代碼。

所以,待會我們在 Eclipse 中新建 JUnit 測試時會選擇 New JUnit Jupiter test,它代表的就是 JUnit 5。

通常,如果新的項目中需要使用 JUnit 來進行單元測試,我都會建議使用 JUnit 5,因為這是以后的一種趨勢。

下面,讓我們看看如何在 Eclipse 中進行編寫和運行 JUnit 測試。

2. 創建測試文件夾

一般來說,我們會把測試相關的代碼放到一個獨立的文件夾中,而且通常名稱就是 test。

我們可以直接在我們的 Java 項目中新建一個文件夾,如下圖所示:

圖片描述

接著輸入文件夾的名稱為 test,如下圖所示:

圖片描述

然后建立和項目中同樣的包層級,包的創建我們已經介紹過了,這里不再贅述,最終如下圖所示:

圖片描述

3. 創建測試文件

現在,我們需要創建測試文件。

通過右鍵點擊我們的包名,彈出的菜單中并沒有測試文件,所以,我們選擇 Other…,如下圖所示:

圖片描述

在彈出的新建窗口中,我們直接在搜索框中輸入 test,然后選擇 Junit Test Case,如下圖所示:

圖片描述

點擊 Nest 后,我們需要填寫測試文件的名稱,其實測試文件就是一個測試類,所以名稱的命名應該和類名的命名規則一致,如下圖所示:

圖片描述

另外,在一步我們還需要選擇使用的 Junit 版本,我們這里選擇了目前最新的 Junit 5,也就是 New JUnit Jupiter test。

點擊 Finish 后,由于我們的項目還沒添加 JUnit 5框架的 JAR 包,所以,Eclipse 會詢問我們是否要現在添加,我們選擇是即可,如下圖所示:

圖片描述

點擊 OK 后,我們將可以看到 Eclipse 中新生成的測試文件 FirstTest.java,以及 Eclipse 幫我們導入的 JUnit 5 JAR 包,同時自動打開 FirstTest 類中也幫我們添加了一些默認代碼,如下圖所示:

圖片描述

現在,我們以及準備好運行測試前的所有工作了。

4. 運行測試

運行我們的測試代碼,其實和我們運行的 Java 程序類似,我們可以選擇在編輯視圖中鼠標右鍵,然后選擇 Run As -> JUnit Test,如下圖所示:

圖片描述

運行后,我們重點需要關注右邊 Eclipse 自動幫我們打開的 JUnit 視圖,如下圖所示:
圖片描述

5. 閱讀 JUnit 視圖

我們可以觀察到JUnit 視圖中默認分為上下兩個選項卡:一個選項卡顯示測試問題列表,另一個測試跟蹤選項卡將所有的測試問題顯示為樹。

我們可以通過雙擊測試跟蹤中的相應行來導航到對于的源代碼,如下圖所示:

圖片描述

5. 小結

本文中對如何在 Eclipse 中使用 JUnit 進行了介紹,從使用上并不難,大家可以自行嘗試。