1. Security Test Configuration 작성: Spring Security의 SecurityTestExecutionListener를 활용하여 테스트용 Security 설정을 제공할 수 있습니다. 이를 통해 테스트 코드에서는 실제 사용자 인증 절차를 거치지 않고도 접근할 수 있습니다. 아래는 예시입니다
@ExtendWith(SpringExtension::class)
@SpringBootTest
@TestExecutionListeners(
listeners = [SecurityTestExecutionListener::class],
mergeMode = TestExecutionListeners.MergeMode.MERGE_WITH_DEFAULTS
)
class MemberServiceTest {
@Autowired
private lateinit var adminMemberSvc: AdminMemberService
// 테스트 코드 작성
}
2.@WithMockUser 어노테이션 사용: 해당 어노테이션을 사용하여 사용자의 모의 인증 정보를 제공하고 테스트를 실행할 수 있습니다. 예를 들어, 관리자 권한으로 테스트를 실행하려면 아래와 같이 어노테이션을 적용할 수 있습니다.
@Test
@WithMockUser(username = "admin", roles = ["ADMIN"])
fun 멤버리스트조회() {
// 테스트 코드 작성
}'Programing > Spring Boot' 카테고리의 다른 글
| Scanner 테스트코드 작성하기 System.setIn() (0) | 2023.07.02 |
|---|---|
| Querydsl 동적 쿼리 사용하는 2가지 방법 (Builder, where절 파라미터) (0) | 2023.07.01 |
| Querydsl Pageable편하게 쓰기 확장함수, 유틸리티 (0) | 2023.07.01 |
| Querydsl 에러 java.lang.NoSuchFieldError: TREATED_PATH (0) | 2023.06.30 |
| 코틀린 QueryDsl 설정 적용하는 방법 (0) | 2023.06.30 |