위키득계정 ↗
기술

Gofakeit

Gofakeit기술
분야
가상 데이터 생성
언어
Go
출력 구성
값과 구조체 및 템플릿
재현 수단
시드와 생성기 관리
Gofakeit은 Go에서 예시와 테스트용 임의 데이터를 생성하는 라이브러리다. 개별 값뿐 아니라 구조체의 필드와 템플릿을 통해 필요한 모양의 자료를 만들 수 있다.

그럴듯한 자료 만들기

테스트나 데모에는 이름과 주소, 문자열 등 모양을 갖춘 자료가 필요하다. Gofakeit은 여러 종류의 값을 생성하는 함수를 제공한다. 구조체 태그나 사용자 정의 함수로 필드의 생성 방식을 구체화할 수도 있다. 생성된 값의 형태가 그럴듯하다고 도메인의 모든 유효 조건을 만족하는 것은 아니다.

시드와 재현성

고정된 시드는 같은 생성 조건의 실행을 반복하는 데 도움이 된다. 다만 시드 0은 고정된 결과를 뜻하지 않고 별도의 난수로 시드를 정하는 경로라는 점을 구분한다. 라이브러리 버전이나 호출 순서가 바뀌면 결과도 달라질 수 있다. 문제를 재현하려면 시드뿐 아니라 생성 규칙과 실제 실패 자료도 함께 보관한다.

가상 데이터의 한계

임의 값은 반드시 서로 다르거나 실제로 존재하지 않는다는 보장이 아니다. 고유성이 필요한 식별자나 금지된 주소 범위는 별도 규칙으로 관리한다. 기본 의사 난수 생성과 보안 비밀 생성의 목적도 다르다. 테스트 자료를 만드는 기능을 암호나 인증 토큰 생성에 그대로 사용하지 않고 경계 사례는 의도적으로 추가한다.

관련 문서

Bogus / Faker Python 라이브러리 / Mimesis / Rapid Go 검사 도구