小编ste*_*ipe的帖子

SpringBoot:测试服务层

让我们假设我有两个类:

  1. TodoRepository
  2. 服务

TodoRepository是一个简单的 CRUD 存储库:

public interface TodoRepository extends CrudRepository<T, ID> {
}
Run Code Online (Sandbox Code Playgroud)

TodoService只是一个调用此存储库的类:

@Service
public class TodoService{

    private final TodoRepository todoRepository;

    @Autowired
    public TodoService(TodoRepository todoRepository) {
        this.todoRepository = todoRepository;
    }

    public void createTodo(Todo todo) {
        todoRepository.save(todo);
    }
}
Run Code Online (Sandbox Code Playgroud)

我应该费心测试服务层吗?

编辑:

感谢@Dherik 的解释。我创建了一个测试类,它看起来像:

注意:我使用的是 JUnit5、Mockito 和 Spring 框架

@ExtendWith(SpringExtension.class)
class TodoServiceTest {

    @MockBean
    private TodoRepository todoRepository;

    private TodoService todoService;

    @BeforeEach
    void setUp() {
        todoService = new TodoService(todoRepository);
    }

    @AfterEach
    void tearDown() {
        clearInvocations(tanklevelRepository);
    } …
Run Code Online (Sandbox Code Playgroud)

spring unit-testing spring-boot

5
推荐指数
1
解决办法
9875
查看次数

标签 统计

spring ×1

spring-boot ×1

unit-testing ×1