"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > DataFaker를 사용하여 Java에서 테스트 데이터 사용

DataFaker를 사용하여 Java에서 테스트 데이터 사용

2025-01-08에 게시됨
검색:472

Utilizar datos de prueba en Java con DataFaker

DataFaker는 테스트 데이터를 쉽게 생성할 수 있는 Java용 라이브러리입니다. 이는 테스트나 시연을 생성하거나 단순히 데이터베이스를 테스트 데이터로 채우고 수동으로 수행할 필요가 없도록 데이터가 필요한 상황에서 유용할 수 있습니다. 이 라이브러리는 Java Faker(한동안 업데이트되지 않았지만)를 기반으로 하며 200개 이상의 다양한 데이터 공급자를 보유하므로 생성할 수 있는 데이터 유형이 매우 다양합니다.

시설

DataFaker는 Maven, Gradle 또는 Ivy를 사용하여 설치할 수 있습니다. 이 경우 Maven이 사용되므로 pom.xml 파일에 다음 종속성을 추가하면 됩니다.


    net.datafaker
    datafaker
    2.4.0

사용

DataFaker를 사용하려면 DataFaker 클래스의 인스턴스를 생성한 다음 이 클래스의 메서드를 사용하여 테스트 데이터를 생성할 수 있습니다.

Faker f = new Faker();

예를 들어 이름과 성이 필요한 경우 name() 내의 메서드 중 하나를 사용할 수 있습니다.

var name = f.name().firstName();
var lastName = f.name().lastName();
System.out.println("Hello, my name is "   name   " "   lastName);

// Output
Hello, my name is Patsy Heller

위 코드를 몇 번 실행해보면 생성된 이름이 다르고 언어도 다른 것을 확인할 수 있습니다. 데이터를 더욱 현실적으로 만들려면 다음 방법 중 하나로 Faker 생성자 내에서 Locale 매개변수를 지정할 수 있습니다.

Faker f = new Faker(Locale.ENGLISH);

Faker f = new Faker(Locale.forLanguageTag("es"));

Faker f = new Faker(Locale.forLanguageTag("es-MX"));

Faker f = new Faker(new Locale("es")); // Esto esta deprecado desde el JDK 19

이전 옵션 중 하나를 사용하면 생성된 데이터는 지정된 언어로 표시됩니다. 단, 지원 여부는 각 데이터 공급자에 따라 다릅니다. 건물에 대한 자세한 내용은 공식 문서를 참조하세요.

더 다양한 예를 만들려면 다음과 같은 Person 유형의 레코드를 고려하세요.

public record Person(Integer id, String firstName, String lastName, String username, String address, String job, String favoriteColor) { }

이제 테스트 데이터가 있는 10명의 사람 목록을 다음과 같이 생성할 수 있습니다.

Faker f = new Faker(Locale.forLanguageTag("es-MX"));
List persons = new ArrayList();

for (int i = 0; i 



마지막으로 생성된 사람의 목록을 인쇄할 수 있습니다.

persons.forEach(System.out::println);

이러한 방식으로 DataFaker를 사용하여 테스트 데이터를 쉽고 빠르게 생성할 수 있습니다. 사용 가능한 데이터 공급자에 대한 자세한 내용은 공식 문서를 참조하세요.

릴리스 선언문 이 기사는 https://dev.to/asjordi/utilizar-datos-de-prueba-en-java-con-datafaker-3f2j?1에 복제되어 있습니다. 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다. 그것
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3