Я новичок в Java Spring, мне нужно руководство по Mockito.
Я пытался протестировать свой сервисный уровень, но ему не удается проверить фиктивное имя пользователя и адрес электронной почты.
В настоящее время я действительно смущен тем, как мне это сделать правильно.
Спасибо!
UserService.java
package com.example.newproject.newproject.service;
import com.example.newproject.newproject.entity.User;
import java.util.List;
public interface UserService {
boolean addUser(String username,String email);
List<User> viewAllUsers();
}
UserServiceImpl.java
package com.example.newproject.newproject.service.impl;
import com.example.newproject.newproject.entity.User;
import com.example.newproject.newproject.repository.UserRepository;
import com.example.newproject.newproject.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service
@Transactional
public class UserServiceImpl implements UserService {
@Autowired
private UserRepository userRepository;
@Override
public boolean addUser(String username, String email) {
if (userRepository.findByUsernameAndEmail(username, email) == null)
{
User user = new User();
user.setUsername(username);
user.setEmail(email);
userRepository.save(user);
return false;
}else{
return true;
}
}
@Override
public List<User> viewAllUsers() {
return userRepository.findAll();
}
}
My Mock
@Test
public void testAddUser(){
Mockito.when(userRepository.findByUsernameAndEmail("Google","[email protected]")).then(invocationOnMock -> {
User user = new User();
return user;
});
boolean result = userService.addUser("Google","[email protected]");
Assert.assertFalse(result);
Mockito.verify(userRepository, Mockito.times(1)).save(userArgumentCaptor.capture());
User user = userArgumentCaptor.getValue();
Assert.assertEquals("Google", user.getUsername());
Assert.assertEquals("[email protected]", user.getEmail());
}
Ошибка, которую я получаю,
java.lang.AssertionError
во время бега
отредактировано с помощью UserService и UserServiceImpl для получения дополнительной информации
Mockito.verify(userRepository, Mockito.times(1)).save(User("Google","[email protected]")); @Хериндра Сетиаван
@RamzyHassan спасибо за ответ, но я получаю сообщение об ошибке «Ожидается вызов метода»




Было бы полезно, если бы вы могли предоставить нам код для вашего класса обслуживания и описать, какую ошибку вы получаете, если вы хотите получить какую-либо помощь.