위키득계정 ↗
기술

Bats-core

Bats-core기술
분야
셸과 명령행 동작 검사
실행 환경
Bash 3.2 이상
결과 형식
TAP 지원
검사 자료
Bash 기반 Bats 파일
Bats-core는 Bash 환경에서 명령과 스크립트의 동작을 자동으로 검사하는 프레임워크다. 실행 결과를 조건식으로 확인하고 TAP 형식의 결과를 출력할 수 있다.

명령을 실행해 확인하기

정적 분석은 실행 전에 의심스러운 구문을 찾지만 실제 명령의 결과까지 보장하지 않는다. Bats-core는 준비된 입력으로 명령을 실행하고 종료 상태와 출력이 기대에 맞는지 확인한다. 셸 스크립트 외에도 명령행에서 실행할 수 있는 프로그램의 동작을 검사할 수 있다.

출력 수집과 실패 판정

run 보조 기능은 명령의 출력과 종료 상태를 저장한다. 기본 호출 자체는 검사를 계속하도록 성공 상태를 반환하므로 저장된 결과에 대한 판정을 빠뜨리면 실패 명령을 놓칠 수 있다. 기대 종료 상태를 지정하거나 별도 조건으로 확인한다. 하위 셸에서 실행된 변수 변경은 호출한 검사에 그대로 남지 않는다.

준비와 정리의 범위

검사별 준비와 정리뿐 아니라 파일이나 전체 모음 단위의 훅을 제공한다. 임시 파일과 외부 프로세스의 수명을 구분하고 실패 경로에서도 정리한다. 검사 파일은 여러 차례 평가될 수 있어 파일 최상위의 부수 효과에 주의한다. 태그로 실행 범위를 줄일 때에는 중요한 검사가 누락되지 않았는지도 확인한다.

관련 문서

ShellSpec / ShellCheck / Shfmt / Testscript Go