test layers

유닛 테스트와 통합 테스트는 위치와 접근 범위가 다르다

같은 cargo test로 실행되지만, 유닛 테스트는 모듈 안을 보고 통합 테스트는 공개 API만 본다.

유닛 테스트src 내부 mod tests

private 함수까지 검증

통합 테스트tests/ 디렉터리

사용자처럼 public API 검증

구분의미판단
파일 위치src/lib.rs 주변tests/*.rs
접근 범위모듈 내부 세부 구현crate 외부 공개 경로
실패 의미구현 단위 회귀사용 계약 회귀
좋은 질문작은 함수가 맞나외부 사용자가 그대로 쓸 수 있나

핵심 유닛 테스트는 내부 계산을, 통합 테스트는 공개 계약을 지킨다.