UUID 생성기로 테스트 데이터 충돌 없이 만들기

개발

테스트 데이터나 mock API를 만들 때 `test-1`, `sample-id` 같은 값을 반복해서 쓰면 캐시, 로컬 스토리지, DB unique 제약에서 충돌이 납니다.

이럴 때는 브라우저에서 바로 쓸 수 있는 Dante Tools를 열어 먼저 손으로 검증해보는 것이 좋습니다. 작은 확인 과정을 거치면 배포 후 되돌리는 시간을 줄일 수 있습니다.

UUID 생성기 사용 화면
UUID 생성기 사용 화면

언제 쓰면 좋은가

개발용 seed, QA 시나리오, 임시 API 요청에 사용할 고유 ID를 빠르게 준비하는 방법입니다.

mock 데이터에 넣을 ID 자리

{"id":"여기에 UUID","type":"invoice","status":"draft"}

실무 루틴

  1. 필요한 개수만큼 UUID v4를 생성합니다.
  2. mock JSON, seed 데이터, 테스트 요청 body에 각각 다른 값을 넣습니다.
  3. 테스트가 반복 실행되는 환경이라면 fixture 이름과 UUID를 함께 관리합니다.
  4. 사용자에게 노출되는 짧은 코드와 내부 UUID를 혼동하지 않도록 구분합니다.

배포 전 체크

  • 같은 ID를 여러 엔티티에 복사하지 않았는가
  • 테스트 스냅샷에서 매번 바뀌면 안 되는 값은 고정했는가
  • 실제 운영 ID처럼 보이는 값을 테스트에 재사용하지 않았는가

UUID 생성기는 화려한 도구는 아니지만, 테스트 데이터의 충돌을 줄이고 재현 가능한 디버깅을 만드는 데 꽤 효과적입니다.