Recherche…


Fournisseurs de données

Les fournisseurs de données permettent de créer plusieurs entrées de test à exécuter dans un test. Considérons un test qui vérifie que les nombres sont correctement doublés. Pour créer un fournisseur de données, fournissez une méthode statique qui retourne Object[][] ou Iterator<Object[]> (ce dernier permet un calcul @DataProvider entrées de test) annoté avec l’annotation @DataProvider , le name propriété étant une chaîne unique identifiant le fournisseur.

import org.testng.annotations.DataProvider;

public class DoublingDataProvider {
    public final static String DOUBLING_DATA_PROVIDER = "doublingDataProvider";

    @DataProvider(name = DOUBLING_DATA_PROVIDER)
    public static Object[][] doubling() {
        return new Object[][]{
                new Object[]{1, 2},
                new Object[]{2, 4},
                new Object[]{3, 6}
        };
    }
}

Dans le cas ci-dessus, chaque Object[] représente un ensemble de données pour un seul test élémentaire - ici le nombre à doubler, suivi de la valeur attendue après le doublement.

Pour utiliser le fournisseur de données, remplissez la propriété dataProvider du test avec le nom du fournisseur. Si la méthode provider a été définie en dehors de la classe de test ou de ses classes de base, vous devez également spécifier la propriété dataProviderClass . La méthode de test doit prendre les paramètres correspondant aux éléments de la description du test élémentaire - ici deux pouces.

import org.testng.annotations.Test;

import static org.testng.Assert.assertEquals;

public class DoublingTest {

    @Test(dataProvider = DoublingDataProvider.DOUBLING_DATA_PROVIDER, dataProviderClass = DoublingDataProvider.class)
    public void testDoubling(int number, int expectedResult) {
        assertEquals(number * 2, expectedResult);
    }
}


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow