簡體   English   中英

使用 JUnit 5 進行單元測試

[英]Unit test with JUnit 5

大家好,我在嘗試執行此單元測試時收到 Nullpointer。我想測試 e class,它接收 3 個參數並返回一個字符串。 我想我需要制作@Before 或其他東西,但它沒有用。 你有什么建議...謝謝!

public class UrlConstructorTest {

    private UrlConstructor urlConstructor;

    @Before
    public void setUp() {
        urlConstructor = new UrlConstructor();
    }

    public static final String TEST_UPDATE_MANIFEST_SR = "/packages/proxyId/test/test1/123/test3/test_test";

    @Test
    public void constructUpdateManifestSrInSasTokenTest() {
        String result = urlConstructor.composeDeviceRegistrationUrl("test","test123","test");
        System.out.println(result);
        assertNotNull(result);
        assertEquals(TEST, result);
    }
}

在此處輸入圖像描述

UrlConstructor 是這樣定義的:

@Component
public class UrlConstructor {

這是 class 中的方法:

 public String composeDUrl(String deviceId, String scopeId) {
    return String.format(Constants.socpe, tes, test);
  }

在 Junit5 中,您應該使用@BeforeEach 或者您可以完全擺脫該 setUp 方法。

public class UrlConstructorTest {

       private final UrlConstructor urlConstructor = new UrlConstructor();

       public static final String TEST_SR = "/packages/proxyId/testID/product/testscope/testcomponent/coomponent_up";

      @Test
      public void constructTest() {
             String result = urlConstructor.composeDeviceRegistrationUrl("testID","coomponent_up","testscope");
             System.out.println(result);
             assertNotNull(result);
             assertEquals(TEST_SR, result);
      }
}

暫無
暫無

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

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