본문으로 바로가기

[Java] JavaFaker (Mock Data 만들기)

category Launguage/Java 2021. 12. 6. 11:01

Reference

Dependency 추가

Maven

<dependency>
    <groupId>com.github.javafaker</groupId>
    <artifactId>javafaker</artifactId>
    <version>1.0.2</version>
</dependency>

Gradle

dependencies {
    ...
    compileOnly 'com.github.javafaker:javafaker:1.0.2'
    ...
}

FakeValue Service (Letterify, Numerify, Bothify, Regexify)

  • Letterify : 알파벳 문자를 무작위로 생성
  • Numerify : 숫자 시퀀스를 생성
  • Bothify : 위 2가지의 조합으로 영숫자를 임의 생성
  • Regexify : 지정된 정규식 패턴에 맞는 임의 문자열 생성
		
        FakeValuesService fakeValuesService = new FakeValuesService(
                new Locale("ko"), new RandomService()
        );
		String letter = fakeValuesService.letterify("????1234");
        String numeric = fakeValuesService.numerify("tailerbox####");
        String strEmail = fakeValuesService.bothify("????####@gmail.com");
        String regexString = fakeValuesService.regexify("[a-z0-9]{10}");
        
        /*{
            regex: "gfdozl86n6",
            letter: "htfn1234",
            numeric: "tailerbox7170",
            email: "plxi0421@gmail.com"
        }*/

JavaFaker의 Faker 클래스

Faker 클래스에서는 Mocking Data를 생성하기 위한 다양한 메소드를 제공한다.

        Faker faker = new Faker(Locale.KOREAN);
        String firstName = faker.name().firstName();
        String lastName = faker.name().lastName();
        String email2 = faker.internet().emailAddress();
        String cityName = faker.address().cityName();
        
        /*{
            firstName: "민재",
            lastName: "신",
            email2: "하은.서@hanmail.net",
            cityName: "남"
        }*/

'Launguage > Java' 카테고리의 다른 글

[Java] JPA (Java Persistance API)  (0) 2021.12.02
[Java] Lombok Library  (0) 2021.11.22