Raku의 bail-out — 테스트 도중 포기하고 실패 신호 보내기

Raku의 bail-out — 테스트 도중 포기하고 실패 신호 보내기

테스트를 돌리다 보면 '이미 실패가 확정인데 계속 돌릴 필요가 없다' 싶은 순간이 있어요. 예를 들어 데이터베이스 연결이 안 돼서 이후 테스트가 전부 의미 없어지는 경우죠. 그럴 때 bail-out으로 테스트 실행을 즉시 멈추고 하네스(harness)에 실패를 알릴 수 있어요.

sub bail-out ($desc?)

출처: Raku 공식 문서 — bail-out

본문

이미 테스트가 실패할 걸 아는 상황이라면 bail-out()을 호출해 테스트 실행에서 빠져나갈 수 있어요.

my $has-db-connection;
...
$has-db-connection or bail-out 'Must have database connection for testing';

이 함수는 현재 테스트 실행을 중단하면서 하네스에 실패를 신호해요. 포기하는 이유를 선택적으로 받을 수 있고요. 주의할 점은 이 함수가 exit()을 호출한다는 거예요. 그래서 정리(clean-up)할 게 있다면 bail-out()을 부르기 전에 해 두어야 해요.

테스트 실행을 중단하되 실패로 표시하긴 싫다면, bail-out 대신 skip-restplan :skip-all('...')을 고려해 보세요.