판정할 동작
mutable default argument에서 유지해야 할 동작과 바뀌어야 할 결과를 나눠 적습니다. 함수 default object는 정의 시 한 번 만들어져 호출 사이에 공유되므로 변경 가능한 기본값 대신 None에서 새 객체를 만듭니다.
작은 테스트 표
기대 결과와 실제 결과를 나누고 둘이 달라지는 가장 작은 입력·설정·상태를 찾습니다. 확인하지 않은 원인을 사실처럼 단정하지 않습니다.
| 조건 | 확인할 내용 |
|---|---|
| 대표 사례 | 자주 쓰는 조건에서 기대 결과가 나오는가 |
| 경계 | 값이나 동작이 바뀌는 지점이 안전한가 |
| 실패 | 오류가 정해진 방식으로 드러나고 중간 상태가 남지 않는가 |
| 반복 | 다시 실행해도 결과가 예측 가능한가 |
결과를 읽고 남길 것
수정 전 실패 사례는 사라지고 기존 정상 사례는 유지돼야 합니다. 입력 크기별 시간·메모리 복잡도, 장시간 RSS 기준선, 열린 자원과 취소 후 task를 확인한다. 주제에 맞는 정상·경계·실패 조건을 다시 실행하고 수정 전 재현 사례가 사라졌는지 확인합니다. 한 번의 가장 좋은 결과나 화면 한 장으로 완료를 선언하지 않습니다. 실패 입력과 기대 결과를 자동 test나 실행 가능한 점검으로 남깁니다.
공식 문서와 적용 범위
문서의 기본값과 동작은 version에 따라 달라질 수 있습니다. 현재 Python 구현과 version, dependency, 입력 크기와 실행 환경에서 다시 확인합니다.