Files
document-haness/docs/TechLog/tech-log-studio/failure-drawn-as-absence/reference/reference-an-expected-failure-must-not-be-counted-as-a-failure.md
T
DongHyeonkaandClaude Opus 5 b1653dbba8 docs(TechLog): 주제 7~10 을 다시 쓴다
주소가 게시 시점에 굳어 저장되는 구조, 축 링크를 두 번 옮긴 순서, 한글 slug 가
간헐적으로 보인 두 가지 어긋남을 표로 갈랐다. 화면이 실패를 없음으로 그릴 때 작성
도구에서 왜 더 오래 숨는지, Promise.all 이 거절과 던짐에서 다른 경로를 타는 이유를
채웠다. CSS module 이 왜 전역 규칙에 닿지 않는지, 403 과 404 가 원인을 어떻게
좁혔는지도 적었다.

link-audit.py 를 감사 Case 의 evidence 로 걸어 배정한 증거 하나를 메웠다.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-07 19:06:20 +09:00

3.5 KiB

kind, slug, title, topic, topicName, project, status, verifiedOn, sourceRevision, source
kind slug title topic topicName project status verifiedOn sourceRevision source
REFERENCE an-expected-failure-must-not-be-counted-as-a-failure 매번 우는 검사는 읽히지 않는다 — 기대된 실패는 조건을 적어 빼고 나머지는 전부 실패시킨다 failure-drawn-as-absence 실패를 없음으로 그린다 TechLog 게시 전 2026-09-04 tech-log@2026-09-02
final/document.md#§10.5

매번 우는 검사는 읽히지 않는다 — 기대된 실패는 조건을 적어 빼고 나머지는 전부 실패시킨다

배포 뒤 전 화면을 훑는 스윕이 기대된 404 를 실패로 셌다. 건강한 배포 아래에 매번 같은 빨간 줄이 남았고, 그 줄은 곧 읽히지 않게 됐다. 기대된 실패는 조건을 적어 빼고 나머지는 전부 실패시킨다.

관계

  • 화면은 못 읽은 것을 없다고 말하지 않는다 같은 프로젝트에서 실패를 어떻게 다룰지 정한 짝이 되는 기준이다.
  • 가드는 결함을 되돌려 실제로 멈추는 것을 확인한 뒤 커밋한다 검사가 실제로 무엇을 잡는지 확인하는 기준이다.
  • 계약은 앵커라고 적었고 만드는 쪽은 경로를 만들었다 같은 스윕이 실제 결함을 잡아야 했던 사건이다.

목적

매번 우는 검사가 읽히지 않게 되는 것을 막는다.

매번 늑대를 외치는 검사는 읽히지 않게 되고, 진짜 실패가 그 옆에 눈에 띄지 않은 채 앉아 있게 된다.

규칙

1. 기대된 실패는 조건을 적어 뺀다

미리보기가 아직 없는 문서는 현재 미리보기를 물으면 404 를 답하고, 화면은 그것을 「미리보기를 만드세요」로 바꾼다. 이 404 는 정상 동작이 오류 상태 코드로 나타난 것이지 실패가 아니다.

로그인 전 세션 탐침의 401 도 같은 부류다. 어느 쪽도 사람이 고칠 것이 없다.

2. 뺀 나머지는 전부 실패시킨다

조건에 걸리지 않는 4xx 와 5xx 는 모두 스윕을 실패시킨다. 「이건 아마 괜찮을 것」이라는 판단을 스윕 안에 두지 않는다.

3. 조건을 적을 수 없으면 빼지 않는다

조건 없이 빼면 진짜 실패도 같이 빠진다. 어떤 요청이 왜 그 응답을 받는지 한 줄로 적을 수 없으면 그것은 아직 기대된 실패가 아니다.

4. 뺀 조건을 사람이 읽을 수 있는 곳에 남긴다

왜 그 응답이 기대된 것인지 적혀 있지 않으면 다음 사람이 조건을 넓힌다. 비슷한 404 가 하나 더 나왔을 때 같은 조건에 넣을지 판단할 근거가 없기 때문이다.

적용 조건

  • 배포 뒤 전 화면을 훑는 스윕처럼 결과를 사람이 훑어보는 검사를 만들 때
  • 정상 동작이 오류 상태 코드로 나타나는 화면이 있는 서비스에서
  • 같은 빨간 줄이 매번 남기 시작했을 때

예외

  • 기계가 판정하고 사람이 결과를 읽지 않는 검사라면 빨간 줄이 쌓여도 무뎌지지 않는다. 그래도 통과 기준은 정해야 한다.
  • 그 응답이 정말 고쳐야 하는 것이면 조건으로 빼지 말고 고친다. 뺄지 고칠지는 사람이 고칠 것이 있는가로 가른다.

예시

  • 미리보기가 없는 문서의 404 를 스윕이 실패로 셌다. 건강한 배포 아래에 매번 같은 빨간 줄이 남았다
  • 로그인 전 세션 탐침의 401 도 같은 부류라 같은 조건으로 제외했다
  • 나머지 4xx·5xx 는 전부 스윕을 실패시킨다