Common Lisp 트랙에서 테스트하기

Exercism에서 Common Lisp 연습 문제를 테스트하는 방법을 배워요.


대화형으로 테스트하기

작업 중인 연습 문제의 디렉터리에서 Common Lisp 구현체를 실행해요(또는 이미 실행 중인 Common Lisp 구현체가 있다면 현재 디렉터리를 그 디렉터리로 바꿔요). roswell을 쓴다면 ros run으로 하면 돼요.

(여기 있는 예시는 모두 exercise-name이라는 연습 문제를 가정해요. 필요에 따라 이름을 바꿔 주세요.)

실행 중인 Lisp 구현체에 테스트 파일을 로드해요. 예를 들어 (load "exercise-name-test")처럼요. (이렇게 하면 풀이 파일도 함께 로드돼요.) 테스트 파일을 로드한 뒤에는 REPL에서 (exercise-name-test:run-tests)를 평가해 테스트를 실행할 수 있어요.

작성 중인 풀이를 수정할 때는 편집기 기능으로 변경 사항을 로드하거나 (load "exercise-name")을 평가해 풀이 파일을 로드해요.

수정한 풀이를 로드한 뒤에는 (exercise-name-test:run-tests)를 평가해 테스트를 다시 실행하는 걸 잊지 마세요.

명령줄에서 테스트하기

다음 명령줄 호출로 테스트를 실행할 수 있어요(여기서도 "exercise"를 알맞은 이름으로 두 곳에서 바꿔 주세요).

ros run --load exercise-test.lisp --eval '(uiop:quit (if (exercise-test:run-tests) 0 1))'

그 명령은 꽤 번거로워요. 한 기여자가 더 쉽게 실행하는 방법에 대한 글을 남겼어요.