From c249e495fded6589ca24e4173f438268c6d45019 Mon Sep 17 00:00:00 2001 From: haerong22 Date: Sun, 28 Feb 2021 15:28:35 +0900 Subject: [PATCH] =?UTF-8?q?application=20test=20:=20testcontainers=20-=20?= =?UTF-8?q?=EC=BB=A8=ED=85=8C=EC=9D=B4=EB=84=88=20=EC=A0=95=EB=B3=B4=20?= =?UTF-8?q?=EC=82=AC=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../study/StudyServiceSpringBootTest.java | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/application-test/app-test/src/test/java/com/example/apptest/study/StudyServiceSpringBootTest.java b/application-test/app-test/src/test/java/com/example/apptest/study/StudyServiceSpringBootTest.java index b64097ee..b029ef3c 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/study/StudyServiceSpringBootTest.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/StudyServiceSpringBootTest.java @@ -9,8 +9,14 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.util.TestPropertyValues; +import org.springframework.context.ApplicationContextInitializer; +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.core.env.Environment; import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.ContextConfiguration; import org.testcontainers.containers.GenericContainer; import org.testcontainers.containers.PostgreSQLContainer; import org.testcontainers.containers.output.Slf4jLogConsumer; @@ -31,10 +37,13 @@ import static org.mockito.Mockito.times; @ActiveProfiles("test") @Testcontainers @Slf4j +@ContextConfiguration(initializers = StudyServiceSpringBootTest.ContainerPropertyInitializer.class) public class StudyServiceSpringBootTest { @Mock MemberService memberService; @Autowired StudyRepository studyRepository; + @Autowired Environment environment; + @Value("${container.port}") int port; @Container static GenericContainer postgreSQLContainer = @@ -55,7 +64,10 @@ public class StudyServiceSpringBootTest { System.out.println("=========================="); System.out.println(postgreSQLContainer.getMappedPort(5432)); System.out.println("=========================="); - System.out.println(postgreSQLContainer.getLogs()); + System.out.println(environment.getProperty("container.port")); + System.out.println("=========================="); + System.out.println(port); +// System.out.println(postgreSQLContainer.getLogs()); studyRepository.deleteAll(); } @@ -63,4 +75,12 @@ public class StudyServiceSpringBootTest { void test_51() { System.out.println("테스트 완료!!"); } + + static class ContainerPropertyInitializer implements ApplicationContextInitializer { + @Override + public void initialize(ConfigurableApplicationContext context) { + TestPropertyValues.of("container.port=" + postgreSQLContainer.getMappedPort(5432)) + .applyTo(context.getEnvironment()); + } + } }