개요
Continuous Testing를 사용하면 스테이징, QA 및 사전 프로덕션 환경에서 구성한 것과 동일한 신서틱(Synthetic) 테스트를 자동으로 실행 및 모니터링하고 코드 변경으로 테스트에 실패할 경우 팀에 선제적으로 경고하고 파이프라인 배포를 차단할 수 있습니다.
Continuous Testing 테스트를 통해 다음을 할 수 있습니다.
병렬화를 설정하면 CI/CD 파이프라인에서 여러 테스트를 순차적으로 실행하지 않고 동시에 실행하여 빌드, 테스트 및 배포 프로세스의 속도를 높일 수 있습니다. 테스트가 실행되면 신서틱(Synthetic) 모니터링 & 테스트 결과 탐색기에서 테스트 결과와 CI 배치를 살펴보세요.
Continuous Testing로 개발자 워크플로를 개선하려면 다음을 수행하세요.
Continuous Testing는 전체 소프트웨어 수명 주기에서 엔드투엔드 테스트를 자동화하여 조직의 애플리케이션 개발을 가속화합니다. 로캘 및 스테이징 환경에서 테스트를 실행하고, 테스트 실행을 병렬화하고, CI 공급자와 통합할 수 있도록 해줍니다.
사전 필수 요건
계정이 없다면 Datadog 계정을 만드세요.
지속적 테스팅 테스트 생성
지속적 테스팅 테스트를 설정하려면 먼저 Datadog에서 신서틱 테스트를 생성해야 합니다. 다음은 테스트 e-커머스 웹 애플리케이션 사이트 https://www.shopist.io
에서 브라우저 테스트를 생성하는 예시입니다.
브라우저 테스트에서는 시작 URL에서 시작해 웹 애플리케이션의 사용자의 여정을 테스트합니다. 시작 URL이 스테이징 환경 내에 있도록 하면 다음 프로덕션 단계로 넘어가기 전에 변경 사항을 테스트하기가 수월해집니다.
테스트 상세 구성
디지털 경험** > 신서틱(Synthetic) 모니터링 & 테스트 > 새 테스트로 이동합니다.
상단 오른쪽 모서리에서 New Test > Browser Test를 클릭합니다.
브라우저 테스트 정의하기:
- 시작 URL 필드에 모니터링하고자 하는 웹사이트의 URL을 추가합니다. 이 예시에서는
https://www.shopist.io
를 입력합니다. - Advanced Options를 선택해 사용자 설정 요청 옵션, 인증서, 인증 자격 등을 설정할 수 있습니다. 이 예시에서는 특정 고급 옵션이 필요없습니다.
- 테스트 이름을 지정하고 팀 태그를 팀 체크아웃 등으로 지정합니다. 테스트 스위트를 정리하고 신서틱(Synthetic) 모니터링 & 테스트 결과 탐색기를 통해 관심 있는 테스트를 찾을 수 있습니다.
- 테스트하고자 하는 브라우저와 디바이스를 선택합니다.
계속하여 평소처럼 테스트 상세 내용과 기록 내용을 기입합니다.
CI 공급자 또는 협업 도구와 통합
Continuous Testing에서 테스트와 트러블슈팅 를 결합하여 애플리케이션 개발을 가속화하고, 워크플로를 간소화하고, 컨텍스트 전환을 최소화하세요.
CI 공급자 또는 Slack 또는 Jira와 같은 협업 도구와 통합하려면 해당 문서를 참조하세요:
지속적 테스팅 테스트 실행
개발 워크플로우를 향상하려면 CLI에 있는 datadog-ci
를 CI 환경으로 사용해 테스트를 구성할 수 있습니다. 그 후 IDE 개발자 환경에서 바로 테스트를 실행할 수 있습니다.
CLI에서 테스트 실행
datadog-ci
NPM 패키지를 사용해 지속적 테스팅 확장 기능을 사용할 수 있습니다. datadog-ci
는 CI/CD 스크립트 내에서 명령을 실행해 배포 전에 애플리케이션을 테스트할 수 있도록 해줍니다. 테스트가 실패할 시에는 자동으로 변경 사항을 차단하거나 롤백할 수 있습니다. 설치 및 설정 방법을 보려면 datadog-ci
구성 페이지를 참고하세요.
datadog-ci
을 사용하여 특정 Datadog 팀 태그로 태그된 테스트만 실행할 수 있습니다. 예를 들어 team-checkout
으로 태그된 모든 테스트를 실행하려면 다음을 수행하세요.
명령줄로 이동합니다.
다음 명령을 실행합니다:
datadog-ci synthetics run-tests -search 'tag:team-checkout' --config global.config.json
신서틱 명령 실행 및 리포터 사용에 대한 자세한 내용은 설정 설명서를 참조하세요.
IDE에서 테스트 실행
Datadog 신서틱 VS 코드 통합을 별도로 사용하면 다음에 도움이 됩니다.
- 로컬에서 개발을 가속화하려면 비공개 위치 또는 로컬 환경을 사용하세요.
- HTTP API 테스트와 브라우저 테스트를 실행하고 VS 코드 내에서 결과를 확인할 수 있습니다.
- 관련 테스트를 동시에 실행하여 중요한 것만 테스트할 수 있습니다.
VS 코드에서 테스트 실행
- VS 코드를 실행하고 VS 코드 확장 보기에서 Datadog 확장을 설치합니다.
- Datadog 신서틱 확장을 실행하고 로그인 페이지가 나타나면 로그인합니다.
- 실행할 신서틱 테스트를 선택합니다.
- 시작 URL을 설정합니다.
- 테스트를 실행합니다.
신서틱(Synthetic) 모니터링 & 테스트 결과 탐색기에서 결과 확인
신서틱(Synthetic) 모니터링 & 테스트 결과 탐색기를 사용하면 Continuous Testing 테스트에 대한 시각화를 만들고 CI 배치 및 테스트 실행을 필터링할 수 있습니다.
디지털 경험 > 신서틱(Synthetic) 모니터링 & 테스트 > 새 테스트로 이동한 다음 CI 배치 또는 테스트 실행을 선택하여 탐색기에서 CI 배치 또는 테스트 실행의 결과를 확인합니다. 목록에서 CI 배치 또는 테스트를 선택하면 결과를 더 자세히 볼 수 있습니다.
검색 쿼리 생성하기
즉시 사용 가능한 검색 쿼리 중 하나를 살펴보고 CI 배치 필터링이나 테스트 실행을 시작해 보세요.
선택적으로 쿼리에서 검색 테스트 실행을 생성할 수 있습니다. 위에서 만든 브라우저 테스트를 사용하여 테스트 ID를 찾고 공통 테스트 실행 패싯을 사용하여 검색 쿼리를 만듭니다.
브라우저 테스트의 ID를 찾으려면,
- 테스트 페이지로 이동합니다.
- 테스트를 선택합니다.
- Properties 섹션에서 테스트 ID를 찾습니다.
검색 쿼리에서 패싯을 사용하는 방법에 관한 자세한 정보는 테스트 실행 검색을 참고하세요.
신서틱(Synthetic) 모니터링 & 테스트 결과 탐색기의 보기를 내보내려면 > 보기를 클릭합니다. 자세한 내용은 저장된 보기를 참조하세요.
병렬화 기본 설정 구성
신서틱 테서트에서 병렬화 설정은 기본값으로 비활성화되어 있습니다. 병렬화 기능을 사용하면 CI/CD 파이프라인에서 테스트 여러 개를 동시에 실행할 수 있습니다. 테스트를 병렬화하려면 Estimate Parallelization 계산기를 사용해 기능 사용이 필요한지 확인할 수 있습니다.
디지털 경험 > 신서틱(Synthetic) 모니터링 & 테스트 > 설정으로 이동하여 계산기를 찾습니다.
예를 들어 CI 배치에 테스트가 24개 있다고 합시다. 각 테스트를 완료하는데 2분이 걸리고, 목표는 모든 테스트를 4분 내에 완료하는 것입니다. 그러면 12개 테스트를 병렬화하여 실행해야 합니다.
$$\text"병렬화 예측" = {\text"CI 배치 당 24개 테스트"* \text"소요 시간 2분"} / \text"CI 파이프라인 예상 소요 시간 4분"$$
병렬화 예측이 완료되면 병렬화 모달에 동시에 실행하고자 하는 테스트 수를 입력하고 Save Selection을 클릭하세요.
자세한 정보는 병렬화 설명서를 참조하세요.
참고 자료