Я новичок в 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();
}
}
Мой макет
@Test
public void testAddUser(){
Mockito.when(userRepository.findByUsernameAndEmail("Google","google@google.com")).then(invocationOnMock -> {
User user = new User();
return user;
});
boolean result = userService.addUser("Google","google@google.com");
Assert.assertFalse(result);
Mockito.verify(userRepository, Mockito.times(1)).save(userArgumentCaptor.capture());
User user = userArgumentCaptor.getValue();
Assert.assertEquals("Google", user.getUsername());
Assert.assertEquals("google@google.com", user.getEmail());
}
Я получаю ошибку
java.lang.AssertionError
во время бега