嗨,我是编程新手,我开始进行单元测试。我遇到了NullPointerException问题。 我认为更新时我的InteliJ中有问题。我的老师键入相同的代码,但他们的测试通过了。这是我应该测试的内容:
@Before
public void SetUp() {
this.motorcycle= new UnitMotorcycle("Nissan", 70, 120);
}
@Test(expected = NullPointerException.class)
public void testShouldThrowNullException() {
UnitRider unitRider = new UnitRider(null, motorcycle);
}
@Test(expected = NullPointerException.class)
public void testNameShouldBeNull() {
UnitRider unitRider = new UnitRider(null, motorcycle);
assertNull(unitRider.getName());
}
@Test(expected = NullPointerException.class)
public void testNameAndMotorShouldBeNull() {
UnitRider unitRider = new UnitRider("", null);
assertEquals("",unitRider.getName());
}
这是我正在测试的方法:
public String addRider(UnitRider rider) {
if (rider == null) {
throw new NullPointerException(RIDER_INVALID);
}
并且我的测试失败了,应该给我NullPointerException。 就像我做我老师的工作一样。我认为这是从更新开始的,我预安装了不同版本的inteliJ,但仍然无法正常工作。我使用的是Java 11,Junit 4.12和Maven 11