본문 바로가기
SPRING

[오류해결] AopAutoConfiguration matched: - @ConditionalOnProperty (spring.aop.auto=true) matched (OnPropertyCondition)

by 바투바투 2022. 8. 21.
반응형

책의 샘플 예제코드를 따라치던 중

AopAutoConfiguration matched:      - @ConditionalOnProperty (spring.aop.auto=true) matched (OnPropertyCondition)

와 함께 엄청 긴 오류가 떴다. 대략 빈등록이 되지 않았다는 오류였는데, 구글링을 해보니 junit의 버전이 다를시, 사용되는 어노테이션이 달라서 오류가 생길 수 있다고 한다.

외부 라이브러리를 확인해보니 나는

junit5를 쓰고 있었고 내가 테스트로 올린 어노테이션은 junit4에서 쓰는 것이었다.

 

import domain.posts.Posts;
import domain.posts.PostsRepository;
import org.junit.After;
import org.junit.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.springframework.test.context.junit4.SpringRunner;

import java.util.List;

import static org.assertj.core.api.Assertions.assertThat;

@RunWith(SpringRunner.class)
@SpringBootTest
public class PostsRepositoryTest {

    @Autowired
    PostsRepository postsRepository;

    @After
    public void cleanup() {
        postsRepository.deleteAll();
    }

    @Test
    public void 게시글저장_불러오기() {
        //given
        String title = "테스트 게시글";
        String content = "테스트 본문";

        postsRepository.save(Posts.builder()
                .title(title)
                .content(content)
                .author("gp3947@naver.com")
                .build());

        //when
        List<Posts> postsList = postsRepository.findAll();

        //then
        Posts posts = postsList.get(0);
        assertThat(posts.getTitle()).isEqualTo(title);
        assertThat(posts.getContent()).isEqualTo(content);
    }
}

여기에서 @RunWith과 SpringRunner을 @ExtendWith과 SpringExtension으로 바꿔줬다.

그러고 나니 오류가 없어졌다!

 

반응형
LIST