使用 JUnit 5 进行单元测试

Unit test with JUnit 5

大家好,我在尝试执行此单元时收到 Nullpointer test.I 想测试 e class,它接收 3 个参数和 returns 一个字符串。我想我需要制作 @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);
      }
}