Seed Data 종류 구분

1 minute read

테스트 및 동작 각 상황에 따라 필요한 데이터

Seed 종류 4가지

  • factory seed data: 데이터베이스 초기화 후 애플리케이션 실행에 필요한 데이터

  • scenario seed data: 각 기능별 시나리오에 따라 필요한 최소한의 데이터
    (필수: factory)

  • dummy seed data: 새 사용자 가입 또는 클라이언트 개발시 목록을 테스트하는 용도
    (필수: factory, 보조: unit, integration, uat)

  • replica seed data: 실제 운영서버 배포전 민감정보 제거된 실데이터 테스트
    (필수: factory)

각 환경에서 seed 데이터 사용

  • unit test: factory, scenario

  • dev_local: factory, scenario

  • dev_server: factory, scenario

  • dev_spot: integration 테스트용도로 임시로 띄우는 환경
    factory, scenario 두가지

  • uat: factory, scenario, dummy

  • stg: replica seed data

  • prd: factory seed data 서비스 초기에 사용, dummy seed data 테스트 계정에 사용

대강 정리 해 보니 factory, scenario는 테스트 시에는 계속 사용될 것 같고
dummy도 필요할 때 지속적으로 쓰일 것 같다

연동테스트는 dev_spot?과 stg에서 주로 이뤄질 것 같고
회원가입부터 테스트 코드가 작성되어 있으면 factory seed만 있어도 될듯?

SEED 설명

factory seed

보통 서비스 운영중에는 새로 넣을 필요가 없지만
1 납품하는 서비스
2 테스트 환경을 구성하는 경우
반복적으로 사용

거래소 개발인 경우라고 가정하면

  • 코인 메타데이터
    • BTC

    • ETH

integration test seed data

연동서비스시 필요한 데이터
자동화 테스트

Scenario

dummy 데이터와 비슷하기도 한데
integration 테스트를 회원가입 단계부터 차례로 진행할 경우 생기는 데이터와 같은 형태

dummy seed data

초기 사용자 가입시 또는 클라이언트 사용시
상황에 따라 추가할 수 있는 데이터

UI를 확인할 때 필요하다.

ex) SNS에서 친구 프로필 목록 화면인 경우

  • 이름

  • 전화번호

  • 이메일

  • 주소

  • 회사

replica seed data

실제 환경에서 테스트를 하는 경우

production -> 데이터 복제 후 민감정보 제거