단위 테스트 클래스에서 Spring Security를 ​​비활성화하는 방법 (Spring Boot 2.3.1)

2020-08-01 spring-boot testing spring-security configuration

세 가지 클래스의 테스트가 있는데 그 중 두 가지에 대해서는 스프링 보안 컨텍스트를 비활성화해야합니다. 단위 테스트는 MockMvc를 사용하여 수행되지 않으므로 @AutoConfigureMockMvc(addFilters = false) 활용할 수 없습니다. 주석을 사용하여 특정 클래스에서 비활성화 할 수 있습니까? 아니면 스프링 보안 컨텍스트를 무시하도록 프로파일을 구성하고 구성해야합니까?

EDIT1 : 테스트 코드

@SpringBootTest
@Transactional
class VirtualMachineServiceUnitTests {

    static List<Team> teams;
    static List<VirtualMachine> virtualMachines;
    static List<Configuration> configurations;
    static List<VirtualMachineModel> models;
    static List<Student> students;
    static List<Course> courses;

    @Autowired TeamRepository teamRepository;
    @Autowired VirtualMachineRepository virtualMachineRepository;
    @Autowired ConfigurationRepository configurationRepository;
    @Autowired VirtualMachineModelRepository virtualMachineModelRepository;
    @Autowired StudentRepository studentRepository;
    @Autowired CourseRepository courseRepository;
    @Autowired ModelMapper modelMapper;

    @BeforeAll
    static void beforeAll(@Autowired TeamRepository teamRepository,
                          @Autowired VirtualMachineRepository virtualMachineRepository,
                          @Autowired ConfigurationRepository configurationRepository,
                          @Autowired VirtualMachineModelRepository virtualMachineModelRepository,
                          @Autowired StudentRepository studentRepository,
                          @Autowired CourseRepository courseRepository) {

        // ...

    }

    @Autowired
    VirtualMachineService virtualMachineService;

    @Test
    void createVirtualMachine() {

        // ...

    }

Answers

Related