我正在尝试为下面的文件编写单元测试用例。
RoleDataController.Java
@RestController
@RequestMapping("/updateRoleData")
public class RoleDataController extends ControllerBase {
@Autowired
public EntityManager entityManager;
public Session session = entityManager.unwrap(Session.class);
RoleData _roleData = new RoleData();
@RequestMapping("/getRoleData")
public String findRoleData(){
List roleList =_roleData.findRoleData(session,123456);
return JsonHelper.toJson(roleList);
}
}
RoleDataControllerTest.java
public class RoleDataControllerTest {
RoleData _roleData = new RoleData();
@Autowired
public EntityManager entityManager;
public Session session = entityManager.unwrap(Session.class);
@Test
public void findRoleData() throws Exception {
List roleList =_roleData.findRoleData(session, 123456);
Assert.assertNotNull(roleList);
}
}
我在下面的行中得到NullPointerException
public Session session = entityManager.unwrap(Session.class);
请帮忙解决这个问题。
答案 0 :(得分:0)
单元测试不会启动Spring上下文,因此@Autowired
注释不会起作用 - Spring不会进行依赖注入。您要么编写集成测试,要么模拟其他bean的行为。