问题描述
我在 Spring Boot 中有一个简单的待办事项应用程序。我正在尝试为 createtodo
方法编写一个测试,该方法将待办事项保存在存储库/数据库中。我在 java.lang.NullPointerException
todoServiceImpl.createtodo(newTodo);
我错过了什么?是否可以在不模拟存储库的情况下对其进行测试?
TodoServiceImpl.java
类
@AllArgsConstructor
@Slf4j
@Service
public class TodoServiceImpl implements TodoService {
private final TodoRepository todoRepository;
@Override
public void createtodo(Todo todo) {
todoRepository.save(todo);
}
}
class TodoServiceImpltest {
@Mock
private TodoRepository todoRepository;
private Todo todo;
private TodoServiceImpl todoServiceImpl;
@BeforeEach
public void setup(){
todoServiceImpl = new TodoServiceImpl(todoRepository);
}
@Test
@displayName("New todo should be saved")
void createtodotest() {
// Setup
Todo newTodo = Todo.builder().id("1").todo("Shopping").build();
todoServiceImpl.createtodo(newTodo);
// Expected behavior
Optional<Todo> todo = todoRepository.findById("1");
// Assert
assertEquals(todo.getTodo(),"Shopping");
assertTrue(todo.isPresent());
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)