이 문서는 Google Cloud Translation API를 사용해 자동 번역되었습니다.
어떤 문서는 원문을 읽는게 나을 수도 있습니다.
백엔드 개발자는 작업 중인 애플리케이션이 안정적이고 버그가 없는지 확인할 책임이 있습니다. CI(연속 통합) 서버에서 작업하는 경우 모든 코드 변경 사항을 프로덕션에 배포하기 전에 확인해야 하므로 이는 특히 중요합니다.
코드를 테스트하는 것은 프로덕션 중단을 방지하는 데 매우 중요하지만 시간이 많이 걸리고 올바른 작업을 수행하기 어려울 수 있습니다. 이 기사에서는 코드를 자동으로 테스트하고 오류에 대한 피드백을 제공하도록 CI 서버를 설정하는 방법에 대해 설명합니다. 또한 Jenkins라는 도구를 사용하여 테스트 프로세스를 자동화하는 방법도 보여줍니다.
지속적인 통합은 하루에 여러 번 모든 개발자 작업 복사본을 공유된 메인라인과 병합하는 방법입니다. CI는 최신 소프트웨어 개발 프로세스의 중요한 부분입니다. 이는 개발자가 서로 다른 개발자의 코드를 함께 병합해야 할 때 발생할 수 있는 "통합 지옥"을 피하는 데 도움이 됩니다.
CI에는 버그를 더 쉽게 찾고 수정할 수 있는 추가 이점도 있습니다. 코드를 더 자주 병합하면 버그를 일으킬 수 있는 대규모 코드 변경이 발생할 가능성이 줄어듭니다. 또한 버그가 시스템에 유입되면 어떤 코드 변경으로 인해 버그가 발생했는지 식별하기가 더 쉽습니다. 이를 통해 몇 시간 또는 며칠의 개발 시간을 절약할 수 있습니다.
사용 가능한 다양한 CI 서버가 있지만 Jenkins 설정에 중점을 둘 것입니다. Jenkins는 설정 및 사용이 쉬운 인기 있는 오픈 소스 CI 서버입니다.
시작하기 전에 서버에 Jenkins를 설치해야 합니다. Jenkins 웹 사이트에서 이 작업에 대한 지침을 찾을 수 있습니다.
Jenkins가 설치되면 새 작업을 생성해야 합니다. 이렇게 하려면 Jenkins 대시보드로 이동하여 "Create New Job"을 클릭합니다.
작업 이름을 지정하고 "자유 스타일 소프트웨어 프로젝트 빌드"를 선택합니다. 그런 다음 "확인"을 클릭합니다.
다음 화면에서 작업을 구성해야 합니다. "소스 코드 관리" 섹션에서 "Git" 옵션을 선택합니다. 그런 다음 "리포지토리 URL" 필드에 Git 리포지토리의 URL을 입력합니다.
"Build Triggers" 섹션에서 "Poll SCM" 옵션을 선택합니다. 이것은 Jenkins에게 몇 분마다 Git 저장소의 변경 사항을 확인하도록 지시합니다. 원하는 경우 빌드를 수동으로 트리거하도록 선택할 수도 있습니다.
"빌드" 섹션에서 "셸 실행" 옵션을 선택합니다. 이렇게 하면 빌드 프로세스의 일부로 셸 명령을 실행할 수 있습니다.
"빌드 후 작업" 섹션에서 "JUnit 테스트 결과 보고서 게시" 옵션을 선택합니다. 이렇게 하면 나중에 볼 수 있도록 테스트 결과가 Jenkins에 게시됩니다.
작업 구성을 저장하려면 "저장"을 클릭하십시오.
이제 CI 서버가 설정되었으므로 몇 가지 테스트를 작성해야 합니다. 테스트는 Java 기반 테스트 프레임워크인 JUnit이라는 언어로 작성됩니다.
다음은 계산기 클래스의 add 메서드가 올바른 결과를 반환하는지 확인하는 간단한 테스트입니다.
public void testAdd() {
Calculator calculator = new Calculator();
int result = calculator.add(1, 2);
assertEquals(3, result);
}
add 메서드가 올바른 결과를 반환하지 않으면 이 테스트는 실패합니다.
JUnit 설명서를 읽어 테스트 작성에 대해 자세히 알아볼 수 있습니다.
몇 가지 테스트를 작성했으면 실행해야 합니다. 이렇게 하려면 Jenkins 대시보드로 이동하여 작업 이름을 클릭합니다.
작업 페이지에서 "지금 빌드" 링크를 클릭합니다. 이렇게 하면 테스트를 실행할 작업 빌드가 트리거됩니다.
빌드가 완료되면 "빌드 기록" 링크를 클릭하여 결과를 볼 수 있습니다. 그러면 실행된 모든 빌드 목록이 표시됩니다.
가장 최근 빌드를 클릭하면 세부 정보를 볼 수 있습니다. "빌드 출력" 섹션에서 테스트 결과를 볼 수 있습니다.
이 기사에서는 코드를 자동으로 테스트하도록 CI 서버를 설정하는 방법에 대해 설명했습니다. 또한 JUnit 테스트 프레임워크를 사용하여 테스트를 작성하고 실행하는 방법도 보여 주었습니다.
CI 서버를 설정하면 시간을 절약하고 코드의 버그 수를 줄일 수 있습니다.