IntelliJ IDEA測(cè)量代碼覆蓋率

2020-09-16 16:57 更新

1. 創(chuàng)建新的項(xiàng)目

創(chuàng)建名為 UnitTestingApp 的 Java 項(xiàng)目。

2. 創(chuàng)建一個(gè)類進(jìn)行測(cè)試

創(chuàng)建一個(gè)新的類用于測(cè)試。

添加方法 sayHello 返回 Hello 字符串。

3. 創(chuàng)建測(cè)試源根目錄

為了不將測(cè)試添加到源中,用戶可以創(chuàng)建根目錄。在這種情況下測(cè)試將從產(chǎn)品代碼中分離出來(lái)。

創(chuàng)建一個(gè)測(cè)試源根目錄。

4. 創(chuàng)建一個(gè)測(cè)試類

IntelliJ IDEA 提供了一個(gè)快捷操作 Cmd + Shift + T 作為類和測(cè)試之間的導(dǎo)航。同時(shí)允許用戶在那里創(chuàng)建一個(gè)測(cè)試類。

選擇 JUnit 4 作為單元測(cè)試庫(kù)。IntelliJ IDEA 將提供到件這個(gè)庫(kù)添加到模塊中。選擇生成 setUp 和 sayHello 的方法。

如果項(xiàng)目有幾個(gè)源根目錄,IDE 將要求選擇其中一個(gè),用于放置新的測(cè)試類。

當(dāng)測(cè)試類生成后,我們可以為我們的測(cè)試方法 testSayHello 添加代碼。

5. 運(yùn)行測(cè)試

現(xiàn)在我們可以通過(guò)右鍵菜單在這個(gè)類上運(yùn)行 'MyClassTest' 來(lái)進(jìn)行測(cè)試,或通過(guò) Run → Edit Configurations 來(lái)進(jìn)行。

結(jié)果將在 Run 工具窗口進(jìn)行顯示。

6. 編輯測(cè)試設(shè)置

我們可以通過(guò) Run → Edit Configurations 或工具欄上的標(biāo)簽來(lái)調(diào)整我們的測(cè)試運(yùn)行配置。

在 Configuration 選項(xiàng)卡,用戶可以選擇需要運(yùn)行的測(cè)試。例如,您可以從一個(gè)類、程序包、測(cè)試套件或甚至模式中運(yùn)行所有的測(cè)試。這里的 Fork 模式讓用戶在一個(gè)單獨(dú)的進(jìn)程運(yùn)行每個(gè)測(cè)試。

在代碼覆蓋標(biāo)簽?zāi)憧梢哉{(diào)整覆蓋率設(shè)置。目前 IntelliJ IDEA 支持兩種測(cè)量覆蓋率引擎。默認(rèn)情況下它使用自己的引擎,當(dāng)然用戶也可以選擇 JaCoCo 引擎。用戶也可以在這里選擇覆蓋率模式。Tracing{span{ mode 模式會(huì)增加消耗,但測(cè)量會(huì)更精確。

7. 運(yùn)行覆蓋

收集覆蓋率,用戶需要通過(guò) Run → Run 'MyClassTest' with Coverage 或工具欄上的選項(xiàng)運(yùn)行特定模式的測(cè)試。

當(dāng)覆蓋模式運(yùn)行至少一個(gè)測(cè)試之后,IDE 將會(huì)在 Project 工具窗口顯示每個(gè)程序包、類的覆蓋率數(shù)據(jù),同時(shí)在 Coverage 工具窗和編輯器中也會(huì)顯示。

8. 編輯器中的覆蓋率

如果用戶添加另一個(gè)方法到 MyClass,并運(yùn)行覆蓋率測(cè) MyClass,就會(huì)發(fā)現(xiàn),沒(méi)有被測(cè)試覆蓋到的代碼都將高亮顯示為紅色。覆蓋的代碼顏色則是綠色。如果一些代碼是只覆蓋部分,那沒(méi)將顯示為黃色。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)