gpt4 book ai didi

java - JerseyTest 和 JUnit 抛出 NullPointerException

转载 作者:搜寻专家 更新时间:2023-10-30 21:18:14 27 4
gpt4 key购买 nike

我在 jersey 测试框架方面遇到了一些问题。如果我使用 @Before 和 @After 注释,则目标方法将抛出 NullPointerException。我以为 JerseyTest 与 JUnit 一起工作?我的问题在哪里?

  • Jersey :2.12
  • JUnit:4.11

失败的代码:

public class MyResourceTest extends JerseyTest {
@Before
public void setUp() { }

@After
public void tearDown() { }

@Override
protected Application configure() {
return new ResourceConfig(MyResource.class);
}

@Test
public void SHOULD_RETURN_BAD_REQUEST() throws IOException {
System.out.println(target("myPath"));
assertEquals(1, 1);
}
}

结果:

java.lang.NullPointerException at org.glassfish.jersey.test.JerseyTest.target(JerseyTest.java:566) at org.glassfish.jersey.test.JerseyTest.target(JerseyTest.java:580) at foo.bar.MyResourceTest.SHOULD_RETURN_BAD_REQUEST(MyResourceTest.java:43)

有效的代码:

public class MyResourceTest extends JerseyTest {
@Override
protected Application configure() {
return new ResourceConfig(MyResource.class);
}

@Test
public void SHOULD_RETURN_BAD_REQUEST() throws IOException {
System.out.println(target("myPath"));
assertEquals(1, 1);
}
}

结果:

JerseyWebTarget { http://localhost:9998/myPath }

最佳答案

您的方法似乎覆盖了父级 JerseyTest 中的一些重要初始化。尝试以不同的方式命名它们。例如:

@Before
public void setUpChild() { }

@After
public void tearDownChild() { }

关于java - JerseyTest 和 JUnit 抛出 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25906976/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com