在@InjectMock中出现空指针异常。

@Service
public class UserServiceImpl  {

@Autowired
private UserRepository userRepository;

public void createUser(User user) {
    userRepository.save(user);
}

public User getUser(long userId) {
    return userRepository.findById(userId).get();
}

public void updateUser(long userId, User user) {
    User userRaw = userRepository.findById(userId).get();
    userRaw.setUserEmail(user.getUserEmail());
    userRaw.setUserName(user.getUserName());
    userRepository.save(userRaw);
}

public List<User> getAllUser() {
    return userRepository.findAll();
}

public void deleteUser(long userId) {
    userRepository.deleteById(userId);
}

}

@RunWith(SpringJUnit4ClassRunner.class)
public class UserServiceImplTest {

@InjectMocks
UserServiceImpl userServiceImpl;

@Mock
UserRepository userRepository;

@Before
public void setup() {
    MockitoAnnotations.initMocks(this);
}

private final long USERID = 1l;

@Test
public void getUserTest() {
    userServiceImpl.getUser(USERID);
    verify(userRepository).findById(USERID);
    }
}

我正在尝试实现junit和mockito.我在injectionMock对象中得到null pointer异常。

解决方案:

你必须添加 @Autowired 在服务注入上。

@Autowired
@InjectMocks
UserServiceImpl userServiceImpl;

给TA打赏
共{{data.count}}人
人已打赏
未分类

JavaScript如何在不同数组上分离数组中的元素?

2022-9-8 8:15:41

未分类

当数据库不可用时禁止路由(优雅地 "关闭")。

2022-9-8 8:26:35

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索