簡體   English   中英

如何讓 JUnit 測試與 Gradle 項目一起運行?

[英]How do I get JUnit tests to run with Gradle project?

問題
如何在 Java Gradle 項目中運行 JUnit 單元測試?

解釋
我有一個 Java Gradle 項目。 它使用的是 Vert.x,但現在我只是想在使用 Vert.x Unit 之前從基礎知識(JUnit)開始。 我想開始為我的項目編寫單元測試。 在單元測試方面,我是一個超級初學者。

我不知道如何運行我的單元測試。 我的項目src/test/java中有一個目錄,在該目錄中有一個 package com.mycompany.myproject.verticle 在 package 里面,我有一個 class:

package com.mycompany.myproject.verticle;

import org.junit.test;

public class VerticleUnitTest {
    @Test
    public void testTest() {
        System.out.println("TESTING ::::::::");
    }
}

在我的build.gradle文件中,我添加了以下內容:

testCompile('junit:junit:4.13')
...
sourceSets {
    test {
        java {
            srcDirs = ["src/test/java"]
        }
    }
}

然后在我的終端中,在項目的根目錄中,我運行:

./gradlew test

我的測試沒有打印出任何東西。 我在控制台 output 中沒有看到任何表明運行測試的內容。

我試過的
我已經嘗試更改srcDirs值以包含整個目錄( src/main/java/com/mycompany/myproject )只是為了讓它工作,即使我確定將來我會在不同的地方進行不同的單元測試包。 我嘗試將srcDirs值更改為 just . ,然后/ 這些似乎都不起作用。

我試圖用./gradlew clean build構建我的項目,看看這是否會接受我的測試,但這不起作用。

我嘗試將testCompile(...)更改為testImplementation(...) 那沒有用。

運行測試最簡單的方法是使用命令在單獨的模塊中運行測試,您必須先執行 clean 命令,以獲得干凈的 state,例如:

./gradlew clean lib:testDebugUnitTest -i

在這種情況下,模塊名稱為“lib” - 將其更改為您的模塊名稱。 如果您在應用程序中有測試 - 將其命名為app:testDebugUnitTest

參數-i

  • 只會為您提供有關后面運行的所有內容的更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM