如何用Maven运行JUnit测试

时间:2020-02-23 14:34:23  来源:igfitidea点击:

本教程将介绍如何使用Maven的Surefire插件运行单元测试。如果我们不熟悉单元测试,可以按照本教程进行快速学习。

在我们的Maven项目中,我们需要以下强制依赖项:

<dependencies>    
<dependency>        
<groupId>org.junit.jupiter</groupId>        
<artifactId>junit-jupiter-api</artifactId>        
<version>5.4.2</version>        
<scope>test</scope>    
</dependency>    
<dependency>       
<groupId>org.junit.jupiter</groupId>        
<artifactId>junit-jupiter-engine</artifactId>        
<version>5.4.2</version>        
<scope>test</scope>    
</dependency>
</dependencies>

jupiter引擎包含jupiter引擎的junit实现,它运行junit引擎的依赖性测试。

junitjupiter api依赖性提供了api,允许我们编写使用junit5的测试和扩展。

因此,让我们创建一个非常简单的Java文件:

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class Example1 {           
 public static int getNumber() {                        
    return 5;            
 }
   public static String getMeaningfulText() {                        
    return "Hello World";            
 }
}

现在让我们为它创建一个测试类:

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class TestExample1 {   
 @Test            
 public void testNumber() {                         
    assertEquals(5, Example1.getNumber());            
 }
 @Test            
 public void testMeaningfulText () {                         
    assertEquals("Hello World", Exampe1.getMeaningfulText ());            
 }    
}

最后,我们可以使用mvn clean build来运行我们的程序,我们应该看到Superfire插件在运行我们的单元测试

[INFO]
[INFO] --- maven-surefire-plugin:2.22.1:test (default-test) @ running-unit-tests --
[INFO]------------------------------------------------------- T E S T S-------------------------------------------------------Running net.theitroad.junit5.JUnit5Example1Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.039 sec -in net.theitroad.junit5.JUnit5Example1Results :Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
[INFO] ------------------------------------------------------------------------[
INFO] BUILD SUCCESS[
INFO] -----------------------------------------------------------------------