강의

멘토링

로드맵

Inflearn brand logo image

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

보키님의 프로필 이미지
보키

작성한 질문수

비전공자도 이해할 수 있는 쿠버네티스 입문/실전

[예제] 백엔드(Spring Boot) 서버와 MySQL 연동하기

빌드(jar 패키징) 오류 공유

작성

·

43

·

수정됨

0

아마 h2같은 in-memory DB를 사용하지 않고, 직접 mysql driver를 추가한 경우는 datasource객체를 만드려고 시도하면서 url, username, password같은 정보가 없다면 스프링 서버를 띄우기도 실패할 것입니다! 이렇게요.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':test'.

스프링 프로젝트를 생성하면 최초로 만들어지는

// java
@SpringBootTest
public class XXTests {
    @Test
    void contextLoads() { }
}   

// kotlin
@SpringBootTest
class XXTests {
    @Test
    fun contextLoads() { }
}

이 테스트코드도 실패할거에요

그럴때는 해당 클래스 파일을 없애거나

@SpringBootTest 어노테이션을 제거하거나

맨 위에 @Disabled를 추가해줘서 테스트를 생략하게 하면 될 것 같습니다!

보통 테스트코드에서도 스프링 컨테이너 뜰 때 드라이버가 있다면 DataSource 빈을 만드려고 시도하다가 기본 ENV가 없다면 실패할 것 같은데..

재성님은 아마 테스트코드를 지우신게 아닐까 생각되네요!

답변 2

1

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

안녕하세요 보키님! 다른 수강생분들도 쉽게 놓칠 수 있는 부분 공유해주셔서 감사합니다ㅎㅎ

강의에서는 3분 15초 쯤에 테스트 파일을 지우는 장면을 넣긴 했으나

빠르게 지나가다보니 다른 수강생분들도 쉽게 놓칠 수 있을 것 같다는 생각이 드네요!

작성해주신 글 덕분에 다른 분들이 도움받을 수 있을 것 같습니다! 감사합니다:D

보키님의 프로필 이미지
보키
질문자

앗! 제가 놓쳤군요 ㅠㅠㅠㅠㅠㅠㅠ

진짜 신기한게 오프라인이나 온라인이나 A로 알려줘도 A', A''로 작성하는 사람들이 있다는것...그게 저였군요..ㅎ

감사합니다!

0

안녕하세요, 인프런 AI 인턴입니다. 보키님.

스프링 프로젝트에서 테스트 코드 실행 시 발생할 수 있는 빌드 오류에 대해 잘 설명해 주셨습니다. 보통 이런 문제는 데이터베이스 연결 설정이 누락되었을 때 발생하는데, 빌드 과정에서 테스트 코드가 실행되면서 데이터 소스 빈을 생성하지 못해 오류가 발생할 수 있습니다.

문제 해결 방법:

  1. 테스트 코드 비활성화:

    • 빌드 시 발생하는 오류를 방지하기 위해 테스트 코드를 실행하지 않도록 설정할 수 있습니다. @Disabled 어노테이션을 붙이거나, build.gradle 파일에서 테스트를 제외하고 빌드할 수 있습니다.
  2. application.properties 설정:

    • application.properties 또는 application.yml 파일에 spring.datasource.url, spring.datasource.username, spring.datasource.password 등의 필수 정보를 설정하여 데이터 소스 연결 문제를 해결할 수 있습니다. 하지만 실제 데이터베이스에 대한 연결이 필요 없는 경우, in-memory DB를 사용할 수도 있습니다.
  3. H2 인메모리 DB 사용:

    • 프로젝트 개발 초기 단계에서 데이터베이스 구성이 복잡할 경우, H2 같은 인메모리 DB를 사용하여 테스트 환경을 구성할 수 있습니다.

관련 자료를 통해 이 문제에 대한 더 많은 정보를 얻어보세요:
- Testcontainers 사용하여 통합 테스트 환경 구축: Testcontainers는 실제 데이터베이스를 도커 컨테이너로 실행하여 테스트할 수 있게 도와주는 라이브러리로, 테스트 환경에서의 데이터베이스 문제를 해결하는 데 유용합니다.

혹시 추가적인 도움이 필요하시거나 다른 궁금한 사항이 있으시면 추가 질문을 남겨주세요. 관련된 문제 해결에서 겪으신 경험을 공유해주셔서 감사합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해 드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

보키님의 프로필 이미지
보키

작성한 질문수

질문하기