Provider 규칙과 assertion 단위
service method의 business rule, edge input, 예외 경로를 작게 나누고 Jest assertion은 결과와 호출 계약만 확인합니다.
규칙 단위단위 테스트는 함수를 호출해 보는 절차가 아니라 규칙을 작게 고정하는 장치입니다. mock은 편의가 아니라 경계 계약으로 다뤄야 합니다.
service method의 business rule, edge input, 예외 경로를 작게 나누고 Jest assertion은 결과와 호출 계약만 확인합니다.
규칙 단위TestingModule에서 외부 repository/client를 mock provider로 바꾸되 실제 method 이름과 reject/resolve 형태는 유지합니다.
mock 계약private 흐름이나 호출 순서만 검증하면 리팩터링 때 거짓 실패가 늘고 규칙 누락은 놓칩니다.
거짓 실패테스트 이름, Given/When/Then 데이터, mock contract, assertion 근거를 남겨 실패 위치를 빠르게 좁힙니다.
실패 근거질문: provider 규칙이 mock 없이도 설명되고 Jest assertion이 그 규칙을 직접 확인하는가
순서: service method 입력 고정 -> mock provider 계약 작성 -> success/exception assertion 분리
위험: dependency 호출 순서만 검증하면 구현을 바꿀 때 테스트는 깨지지만 실제 business rule 누락은 잡지 못합니다.