Autify를 사용한 CI/CD
  • 24 Oct 2024
  • 3 읽을 분
  • 기여자
  • 어두운

Autify를 사용한 CI/CD

  • 어두운

기사 요약

*이 페이지의 일부는 기계 번역되었습니다.

Autify는 엔드투엔드 테스트를 자동화하고 수동 개입 없이 안정적으로 실행할 수 있는 방법을 제공합니다. 또한 CI/CD 파이프라인을 더 안전하게 만들 수 있습니다. 이 문서에서는 CI/CD란 무엇이며 Autify를 통해 CI/CD 프로세스를 개선하는 방법에 대해 설명합니다.

ogp_cicd-w-autif.png

CI/CD란 무엇인가요?

CI(지속적 통합)와 CD(지속적 배포/배포)는 현재 소프트웨어 릴리스 주기에서 널리 사용되고 있습니다. CI/CD에 대한 정의는 여러 가지가 있지만 CI/CD의 핵심 개념은 "지속적"입니다. CI/CD가 없으면 소프트웨어 릴리스 프로세스는 많은 수동 단계가 필요하고 유동적이지 않으므로 "지속적"이 아닙니다. CI/CD가 없을 때 발생할 수 있는 문제의 예로는 코드 병합 후 Docker 이미지나 JAR 파일과 같은 아티팩트를 수동으로 빌드하고 업로드해야 하거나 배포 절차에 따라 스테이징/프로덕션 서버에 소프트웨어를 배포해야 할 때를 들 수 있습니다. 이러한 경우 이러한 프로세스에는 셸 스크립트 실행 및/또는 수동 테스트와 같은 사람의 개입과 작업이 필요합니다. 이러한 프로세스를 자동화하면 코드 병합부터 프로덕션 릴리스까지 걸리는 시간이 단축되고 고객에게 더 빠르게 기능과 가치를 제공할 수 있습니다. 이것이 바로 사람들이 릴리스 주기를 단축하기 위해 CI/CD에 관심을 갖는 이유입니다.

사람들이 CI/CD를 완전히 사용하지 못하는 이유는 무엇인가요?

수동 프로세스가 여전히 널리 사용되고 있습니다. 왜 그럴까요? 사람들은 테스트/QA를 사람에 의존하기 때문입니다. 빌드 및 배포 프로세스를 자동화할 수는 있지만 일반적으로 릴리스 단계를 전체적으로 테스트할 수 있는 좋은 방법이 없습니다. 따라서 사람들은 충분한 테스트/QA 없이 배포하는 것이 안전하지 않다고 생각하기 때문에 빌드와 배포 사이에 공백이 생겨 CI/CD 프로세스를 완전히 '지속적'으로 만들지 못합니다.

프로덕션 릴리스 전에 자신감을 얻기 위해 사람들은 일반적으로 프로덕션 환경과 매우 유사한 스테이징 환경을 유지합니다. 유일한 차이점은 스테이징 환경을 사용하는 고객이 없다는 것입니다. 코드 병합 후 아티팩트가 빌드되면 해당 아티팩트를 자동 또는 수동으로 스테이징 환경에 배포합니다. 그런 다음 변경 사항이 프로덕션 환경에 가까운 환경에서 잘 작동하는지 확인하여 프로덕션 배포 여부를 결정할 수 있습니다. 배포 후 프로덕션에서도 동일한 테스트 시나리오를 실행하고 프로덕션에서 문제가 발생하면 이전 수정본으로 롤백하기도 합니다.

이러한 테스트/QA 프로세스는 현재 대부분 수작업으로 이루어지기 때문에 CI/CD 자동화가 완전히 연속적이라고 생각하지 않습니다.

Autify는 이 부분에서 신뢰할 수 있는 솔루션을 제공할 수 있습니다. 로그인, 리소스 생성, 텍스트, 활성화/비활성화 등 다양한 어설션을 사용하여 실제 브라우저에서 일부 작업을 실행하는 등 웹사이트의 기능을 엔드투엔드 방식으로 검증하는 테스트 시나리오를 만들 수 있습니다. 이를 통해 인력 없이도 반복 가능한 방식으로 대부분의 QA 프로세스를 처리하고 스테이징 및/또는 프로덕션 배포를 자동으로 검증할 수 있습니다.

CI/CD를 Autify와 통합한다는 것은 무엇을 의미하나요?

CI_CD with Autify-EN.png

Autify CI/CD 통합의 주요 훅 포인트는 스테이징 또는 프로덕션과 같은 영구 환경에 배포한 후입니다. 이를 통해 배포 직후 엔드투엔드 사용자 경험을 확인하고 다음 단계로 계속 진행하기 전에 새 배포에 회귀 문제가 있는지 바로 확인할 수 있습니다.

예를 들어, 현재 CI/CD 파이프라인에서 스테이징 배포 직후에 Autify 유효성 검사 단계를 삽입할 수 있습니다. 이 경우 코드 병합이 자동으로 스테이징에 배포되고 Autify는 스테이징 엔드포인트에 대해 미리 기록된 테스트 시나리오를 즉시 실행하여 새 배포가 이러한 테스트 시나리오를 깨뜨리지 않도록 합니다. 또한 스테이징을 위한 Autify 유효성 검사 단계 후에 프로덕션 배포 단계를 연결하고 Autify 테스트가 스테이징에서 통과하면 자동으로 프로덕션 배포를 시작할 수 있습니다. 프로덕션 릴리스 전에 추가적인 수동 유효성 검사가 필요할 수도 있지만, Autify를 사용하면 대부분의 위생 검사를 처리하고 수동 유효성 검사를 크게 줄일 수 있습니다.

프로덕션 배포 후에도 동일한 Autify 유효성 검사 단계를 추가하여 프로덕션이 회귀 테스트를 통과하도록 할 수 있습니다. 또한 매 시간마다 프로덕션에 대한 자동 유효성 검사를 지속적으로 실행하는 고급 솔루션으로 확장할 수도 있습니다. 종합 테스트와 마찬가지로 이 예약된 엔드투엔드 테스트를 통해 프로덕션 환경을 사전에 검증하고 고객이 발견하기 전에 문제를 발견할 수 있습니다. 이러한 문제는 종속성 문제, 내부 성능 문제 또는 배포하지 않은 다른 문제로 인해 발생할 수 있습니다. 따라서 프로덕션 환경을 주기적으로 사전 예방적으로 모니터링하는 것이 좋습니다.

CI/CD 통합의 또 다른 고급 사용 사례는 각 풀 리퀘스트에 대한 미리 보기 엔드포인트와 같은 임시 환경(단기간 동안 지속되는 환경)에 대해 Autify를 실행하여 코드 병합 전에도 동일한 유효성 검사를 실행할 수 있도록 하는 것입니다. 자세한 내용은 다른 문서를 참조하세요.

CI/CD를 Autify와 통합하는 방법은 무엇인가요?

릴리스 파이프라인을 자동화하기 위해 CI/CD 솔루션을 사용하고 있을 것입니다. 저희는 GitHub Actions, CircleCI, Jenkins 및 GitLab CI/CD와 같은 일부 플랫폼에 대한 공식 통합 문서를 제공합니다. 사용 중인 솔루션이 목록에 포함되어 있지 않더라도 명령줄 인터페이스(CLI) 자동화를 사용하여 쉽게 연결할 수 있습니다. 어느 쪽이든 몇 줄의 구성(또는 플러그인 설정)을 추가하면 Autify 테스트 시나리오 또는 테스트 계획을 자동으로 실행하고 결과를 선택적으로 기다릴 수 있습니다.

아래에서 공식 CI/CD 문서를 찾아서 사용해 보세요!


이 문서가 도움이 되었습니까?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.