Azure Pipelines에서 Postman 컬렉션 실행

소개



전용 Azure 파이프라인 내에서 일련의 Postman 컬렉션을 실행하면 최소한의 수동 개입으로 개발, 테스트 및 스테이징 환경의 API 테스트를 자동화하는 기능이 제공됩니다. 또한 정기적인 실행을 통해 shift-left 접근 방식을 채택하도록 권장합니다.

test early and often



따라서 팀은 개발 수명 주기 초기에 회귀 및 버그를 감지할 수 있습니다.

우편 배달부 컬렉션 만들기



첫 번째 단계는 동일한 컬렉션에서 Postman API 요청을 수집하는 것입니다. 이 예에서 컬렉션 이름은 Post-Office입니다. 테스트 탭 아래에는 API 호출 후 반환된 예상 상태 코드를 확인하는 간단한 어설션이 있습니다.

참고: 엔드포인트 *-foo.com은 예시일 뿐이며 현재 컨텍스트에서 자신의 엔드포인트로 바꿔야 합니다.



환경 + 변수 만들기



코드가 배포되는 다양한 컨텍스트에 해당하는 Postman 환경을 생성했는지 확인하십시오. 환경은 특정 컨텍스트(API 키, 외부 웹 서비스 등)에만 관련된 변수를 구성하는 방법을 제공합니다.



컬렉션 내보내기



사이드바에서 관련 Postman 컬렉션 위로 마우스를 가져간 다음 "..."(더 많은 작업 보기)을 클릭하여 관련 Postman 컬렉션을 내보낼 수 있습니다. 마지막으로 내보내기를 클릭하십시오.



기본 파일 이름이 *.postman_collection.json인 파일(이 경우 Post-Office.postman_collection.json)이 다운로드됩니다.

Postman 환경 변수 내보내기



사이드바의 환경 탭으로 이동한 다음 "..."를 클릭하고 마지막으로 내보내기를 선택합니다.



새 파이프라인 생성



컬렉션 및 환경 json 파일을 내보낸 후에는 Azure DevOps에서 웹앱의 리포지토리로 푸시해야 합니다.

이제 배관 공사를 할 시간입니다! 작업은 Postman 수집 스크립트를 자동으로 실행할 새 파이프라인을 만드는 것입니다.

파이프라인으로 이동하여 새로 만들기를 클릭합니다. 클래식 편집기를 선택합니다.



작업 추가



작업 1: newman 패키지 설치



첫 번째 작업에서는 npm의 newman 패키지를 사용하여 우편 배달부 컬렉션을 실행합니다.

Newman is a command-line Collection Runner for Postman. It enables you to run and test a Postman Collection directly from the command line.

-- https://learning.postman.com/docs/running-collections/using-newman-cli/command-line-integration-with-newman/





작업 2: Postman Collection 실행



newman으로 postman 컬렉션을 실행하려면 다음 명령을 제공해야 합니다.
newman run sample-collection.json -e env.postman_environment.jsonnewman run의 첫 번째 인수는 우편 배달부 컬렉션의 파일 경로입니다. 옵션-e은 Postman 환경 파일의 파일 경로를 입력으로 사용합니다.



파이프라인 변수 사용



이전 스크린샷에서 옵션-e의 환경 파일 이름을 하드코딩한 것을 볼 수 있습니다.

newman run sample-collection.json -e env.postman_environment.json


명령 내에서 환경 파일 이름을 직접 지정하는 대신 파이프라인 변수를 사용할 수 있습니다.
파일 이름을 저장할 변수CUSTOM.ENVIRONMENT_FILE를 만듭니다.



그런 다음 다음과 같이 명령 내에서 변수를 참조할 수 있습니다.



# Navigate to postman directory
DESTINATION='$(System.DefaultWorkingDirectory)/postman'
cd $DESTINATION

# Absolute path for environment file
ENVIRONMENT_FILE='$(System.DefaultWorkingDirectory)/postman/environments/$(CUSTOM.ENVIRONMENT_FILE)'

newman run collections/Post-Office.postman_collection.json -e $ENVIRONMENT_FILE



Postman Collection을 실행한 후 모든 테스트 및 요청의 결과를 사용자 지정 파일로 내보낼 수 있습니다.
이는 리포터를 통해 가능합니다. 여기서는 JUNIT 리포터를 사용하여 테스트 결과를 사용자 지정 파일로 내보냅니다.

newman run collections/Post-Office.postman_collection.json  -e $ENVIRONMENT_FILE --reporters cli,junit --reporter-junit-export test-results/outputfile.xml

outputfile.xml는 테스트 결과를 수집하려는 사용자 정의 파일을 나타냅니다.

맞춤형 보고자에 대한 자세한 내용은 여기에서 확인하십시오. Newman Custom Reporters

작업 3: 테스트 결과 게시



마지막 단계는 테스트 결과를 게시하고 파이프라인의 테스트 탭에서 결과를 보는 것입니다.

테스트 결과 게시 작업을 추가합니다.



테스트 탭에서 테스트 결과 보기



그 사람들이야! 감사합니다 😃

참조


  • https://learning.postman.com/docs/running-collections/using-newman-cli/command-line-integration-with-newman/
  • https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/what-is-azure-pipelines?view=azure-devops
  • 좋은 웹페이지 즐겨찾기