# （十一）JUnit5 新的用法




#### Junit5 新的用法
---

创建 JUnit5NewTests 测试类。

```java
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.Assertions.assertAll;

import org.junit.jupiter.api.*;

class JUnit5NewTests {

    @BeforeEach
    @DisplayName("每条用例开始时执行")
    void start(){

    }

    @AfterEach
    @DisplayName("每条用例结束时执行")
    void end(){

    }

    @Test
    void myFirstTest() {
        assertEquals(2, 1 + 1);
    }

    @Test
    @DisplayName("描述测试用例╯°□°）╯")
    void testWithDisplayName() {

    }

    @Test
    @Disabled("这条用例暂时跑不过，忽略!")
    void myFailTest(){
        assertEquals(1,2);
    }

    @Test
    @DisplayName("运行一组断言")
    public void assertAllCase() {
        assertAll("groupAssert",
                () -> assertEquals(2, 1 + 1),
                () -> assertTrue(1 > 0)
        );
    }

    @Test
    @DisplayName("依赖注入1")
    public void testInfo(final TestInfo testInfo) {
        System.out.println(testInfo.getDisplayName());
    }

    @Test
    @DisplayName("依赖注入2")
    public void testReporter(final TestReporter testReporter) {
        testReporter.publishEntry("name", "Alex");
    }

}

```
用法都已经通过测试用例的 __@DisplayName__ 进行了说明，这里不再解释。


__运行结果如下：__

![](http://img.testclass.net/junit_5_run_result.png)




原始封面

![课程图片](https://images.unsplash.com/photo-1581094273788-cba84678c0a3?w=300)


