인프런 커뮤니티 질문&답변

권순규님의 프로필 이미지
권순규

작성한 질문수

토비의 스프링 부트 - 이해와 원리

@Conditional 학습테스트 강의 질문 입니다.

해결된 질문

작성

·

373

1

안녕하세요.

강의를 보다가 궁금한점이 생겼는데, 아래의 false 컨디션을 체크하는 테스트 코드에서 Config 클래스가 빈에 등록되어 있는지를 확인할때 Config1 이 존재하는지를 테스트 하신 이유가 궁금합니다.

        // false
        new ApplicationContextRunner().withUserConfiguration(Config2.class)
                .run(context -> {
                    assertThat(context).doesNotHaveBean(MyBean.class);
                    assertThat(context).doesNotHaveBean(Config1.class);
                });

제 생각에는 설정을 Config2 클래스로 등록을 했기 때문에 Conditional 여부와는 관계 없이 Config1 은 없을것 같은 생각이 들어서 질문 드립니다.

답변 1

1

토비님의 프로필 이미지
토비
지식공유자

아래 Config1을 체크하는 assertThat은 잘못된 코드네요. ㅠㅠ

Config2를 확인했어야 합니다.

위에 MyBean이 등록되지 않은 것이 확인됐다면 Config2가 컨디션 조건을 통과하지 못한 게 분명하긴 합니다만 아래 Config1은 Config2여야 맞습니다. 해당 수업에 관련된 노트나 안내를 추가해보겠습니다.

권순규님의 프로필 이미지
권순규

작성한 질문수

질문하기