Maison > Java > javaDidacticiel > Utiliser les données de test en Java avec DataFaker

Utiliser les données de test en Java avec DataFaker

Mary-Kate Olsen
Libérer: 2024-11-25 12:31:10
original
881 Les gens l'ont consulté

Utilizar datos de prueba en Java con DataFaker

DataFaker est une bibliothèque pour Java qui vous permet de générer facilement des données de test. Cela peut être utile dans les situations où des données sont nécessaires pour générer des tests, une démonstration ou simplement pour remplir une base de données avec des données de test, et éviter de devoir le faire manuellement. Cette bibliothèque est basée sur Java Faker (bien qu'elle n'ait pas été mise à jour depuis un certain temps) et compte plus de 200 fournisseurs de données différents, le type de données qui peuvent être générées est donc très varié.

Facilité

DataFaker peut être installé en utilisant Maven, Gradle ou Ivy, dans ce cas Maven sera utilisé, il vous suffit donc d'ajouter la dépendance suivante au fichier pom.xml :

<dependency>
    <groupId>net.datafaker</groupId>
    <artifactId>datafaker</artifactId>
    <version>2.4.0</version>
</dependency>
Copier après la connexion

Utiliser

Pour utiliser DataFaker, vous devez créer une instance de la classe DataFaker et vous pouvez ensuite utiliser les méthodes de cette classe pour générer les données de test.

Faker f = new Faker();
Copier après la connexion

Par exemple, si vous avez besoin d'un prénom et d'un nom, vous pouvez utiliser l'une des méthodes contenues dans 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
Copier après la connexion

Si nous exécutons le code ci-dessus plusieurs fois, nous pouvons voir que les noms générés sont différents et sont dans une langue différente. Pour rendre les données encore plus réalistes, vous pouvez spécifier un paramètre Locale dans le constructeur Faker de l'une des manières suivantes :

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
Copier après la connexion

En utilisant l'une des options précédentes, les données générées seront dans la langue spécifiée, même si cela dépend de chaque fournisseur de données s'il la prend en charge ou non. Pour plus d'informations sur les Locaux vous pouvez consulter la documentation officielle.

Pour faire un exemple plus varié, considérons l'enregistrement suivant de type Personne :

public record Person(Integer id, String firstName, String lastName, String username, String address, String job, String favoriteColor) { }
Copier après la connexion

Une liste de 10 personnes avec des données de test peut désormais être générée comme suit :

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()
            )
    );
}
Copier après la connexion

Enfin, la liste des personnes générées peut être imprimée :

persons.forEach(System.out::println);
Copier après la connexion

De cette manière, les données de test peuvent être générées facilement et rapidement à l'aide de DataFaker, pour plus d'informations sur les fournisseurs de données disponibles, vous pouvez consulter la documentation officielle.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal