GitLab 차트에서 사용되는 스크립트에 대한 Bats 테스트 작성

다음은 GitLab 차트를 위해 Bats 테스트를 만드는 데 사용되는 참고 사항과 규칙입니다.

이름 지정 및 구조

Bats 테스트 파일은 테스트하는 셸 스크립트와 동일한 디렉토리에 배치되어야 하며, .sh 대신 .bats 확장자를 사용한 동일한 파일 이름을 가져야 합니다.

shell ./scripts/ci/pin_image_digests.sh # 테스트할 스크립트 ./scripts/ci/pin_image_digests.bats # Bats 테스트

이 규칙을 통해 테스트되는 스크립트 옆에 Bats 테스트 파일을 쉽게 찾을 수 있습니다.

Bats 테스트 필터링

개발을 지원하기 위해 테스트 케이스 이름에 대한 정규식 일치를 사용하여 어떤 테스트를 실행할지 필터링하는 것이 가능합니다.

다음 예제는 “rendering”이라는 이름을 가진 테스트만 실행합니다.

bats scripts/ci/pin_image_digests.bats -f 'rendering'

테스트는 태그에 따라 필터링되기도 하며, 예제는 bats documentation에서 확인할 수 있습니다.

실행 명령어의 출력 확인

테스트를 작성하거나 디버깅할 때, --verbose-run 플래그를 사용하여 bats를 실행하면 $output이 화면에 출력됩니다. 이 기능은 종종 디버깅할 때 도움이 되며, CI에서 bats를 실행할 때 사용됩니다.