Java Junit@未正常工作之前

Java Junit@未正常工作之前,java,junit,Java,Junit,上面的代码返回一个NullPointerException。如果我移动接地=新接地(4,4)

上面的代码返回一个NullPointerException。如果我移动
接地=新接地(4,4)getDimX()
方法中,测试运行正常。我有许多测试将使用相同的基础,因此我不希望对每个测试用例都进行新的测试。另外,如果我完全去掉
@Begin
块,只留下基本实例化,它也可以正常工作。那么,之前的
@有什么意义呢?

在测试设置之外的测试类中创建了一个私有字段,即

@Before
public void setup(){
    Ground ground = new Ground(100, 100);
}

@Test
public void getDimX(){
    String msg = "For a newly created Ground(100, 100), ground.getDimensionX()      should return 100";
    assertEquals(100, ground.getDimensionX());
}
然后在
before()中实例化地面


我在导入org.junit.Test时遇到了这个问题 org.junit.jupiter.api.Test

同意@ANU JOHN, 以下导入不匹配:

@Before
public void before(){ground = new Ground(100,100);}

将第二个改为org.junit.Test;帮我修好了。

这对我没用!我面临着完全相同的问题!这个问题最终是关于语言语法(不理解局部变量),而不是之前的
@Before
public void before(){ground = new Ground(100,100);}
import org.junit.Before;
import org.junit.jupiter.api.Test;