我的Junit测试给出了java.lang.NullPointerException
这是一个测试类,它最初运行得很好,但在修复了javax验证中的一些错误后,它开始出现错误 **事实上,我是JUnit测试新手,我对这个错误感到非常困惑。错误为空指针异常。请我会很感激我能给我一些解决方案**我的Junit测试给出了java.lang.NullPointerException,java,maven,testing,junit,Java,Maven,Testing,Junit,这是一个测试类,它最初运行得很好,但在修复了javax验证中的一些错误后,它开始出现错误 **事实上,我是JUnit测试新手,我对这个错误感到非常困惑。错误为空指针异常。请我会很感激我能给我一些解决方案** @RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest class NhSystemApplicationTests { @Autowired private UserServi
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest
class NhSystemApplicationTests {
@Autowired
private UserService userService;
@Autowired
private TaskService taskService;
@Before(value = "")
public void initDb() {
{
User newUser = new User("testUser@mail.com", "testUser", "****");
userService.createUser(newUser);
}
{
User newUser = new User("testAdmin@mail.com", "testUser", "*****");
userService.createUser(newUser);
}
Task userTask = new Task("02/01/2018", "00:11", "11:00", "You need to work Today");
User user = userService.findOne("testUser@mail.com");
taskService.addTask(userTask, user);
}
@Test
public void testUser() {
User user = userService.findOne("testUser@mail.com");
assertNotNull(user);
User admin= userService.findOne("testAdmin@mail.com");
assertEquals(admin.getEmail(), "testAdmin@mail.com");
}
@Test
public void testTask() {
User user = userService.findOne("testUser@mail.com");
List<Task> task = taskService.findUserTask(user);
assertNotNull(task);
}
}
@RunWith(SpringJUnit4ClassRunner.class)
@春靴测试
类NhSystemApplicationTests{
@自动连线
私人用户服务;
@自动连线
私人任务服务任务服务;
@之前(值=”)
public void initDb(){
{
用户newUser=新用户(“testUser@mail.com“,”testUser“,”****”;
userService.createUser(newUser);
}
{
用户newUser=新用户(“testAdmin@mail.com“,”testUser“,”****”;
userService.createUser(newUser);
}
Task userTask=新任务(“2018年1月2日”、“00:11”、“11:00”、“您今天需要工作”);
User=userService.findOne(“testUser@mail.com");
taskService.addTask(userTask,user);
}
@试验
公共void testUser(){
User=userService.findOne(“testUser@mail.com");
assertNotNull(用户);
User admin=userService.findOne(“testAdmin@mail.com");
assertEquals(admin.getEmail(),”testAdmin@mail.com");
}
@试验
公共void testTask(){
User=userService.findOne(“testUser@mail.com");
List task=taskService.findUserTask(用户);
assertNotNull(任务);
}
}
这是错误java.lang.NullPointerException的图像
读取错误消息意味着在方法testTask中解析的ArrayList的某些元素没有正确初始化。查看每个相关的ArrayList以查看是否正确创建了它们可能是值得的。请使用调试器确保正确注入了这两个服务。在我看来,其中一个可能为null。在您的示例中,它不是单元测试,而是集成测试。请阅读两者之间的差异,然后更改标题问题。