首页 > 解决方案 > 如何创建 Spring RepositoryRestResource 的合约测试

问题描述

我有以下用 @RepositoryRestResource 注释的 CRUD 存储库:

@RepositoryRestResource
public interface JPARepository extends CrudRepository<X, Y> {
  @PreAuthorize("hasAuthority('OWNER')")
  Optional<X> findFirstBySpecificField(String specificField);
}

如何在不引导整个 spring 上下文和内存数据库的情况下创建一个负责测试 @PreAuthorize 注释的测试。

换句话说,我想使用 mockMvc 创建一个合同测试,以验证各个自动生成的端点是否会在给定特定安全条件的情况下返回 4xx。

为了澄清我实例化spring安全bean没有问题。我的问题是我应该在我的测试类上使用哪些注释来仅引导所需的 JPA 控制器。

标签: javaspringspring-data-jpaspring-data-restspring-test

解决方案


推荐阅读