DataFaker は、テストデータを簡単に生成できる Java 用ライブラリです。これは、テストやデモンストレーションを生成するため、または単にデータベースにテスト データを入力するためにデータが必要な場合に役立ち、手動での実行を避けることができます。このライブラリは Java Faker に基づいており (ただし、しばらく更新されていません)、200 を超える異なるデータプロバイダーを備えているため、生成できるデータの種類は非常に多様です。
DataFaker は Maven、Gradle、または Ivy を使用してインストールできます。この場合は Maven が使用されるため、次の依存関係を pom.xml ファイルに追加するだけで済みます。
<dependency> <groupId>net.datafaker</groupId> <artifactId>datafaker</artifactId> <version>2.4.0</version> </dependency>
DataFaker を使用するには、DataFaker クラスのインスタンスを作成する必要があります。その後、このクラスのメソッドを使用してテスト データを生成できます。
Faker f = new Faker();
たとえば、姓名が必要な場合は、name() 内のメソッドの 1 つを使用できます:
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<Person> persons = new ArrayList<>(); for (int i = 0; i < 10; i++) { persons.add( new Person( f.number().numberBetween(1, 1000), f.name().firstName(), f.name().lastName(), f.internet().username(), f.address().fullAddress(), f.job().title(), f.color().name() ) ); }
最後に、生成された人物のリストを印刷できます。
persons.forEach(System.out::println);
このように、DataFaker を使用してテスト データを簡単かつ迅速に生成できます。利用可能なデータ プロバイダーの詳細については、公式ドキュメントを参照してください。
以上がDataFaker を使用して Java でテスト データを使用するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。