Testng: Demande de fonctionnalité : sélection de méthodes de test surchargées (fichier de suite et/ou plugin eclipse)

Créé le 30 déc. 2016  ·  4Commentaires  ·  Source: cbeust/testng

Tester la version NG

Remarque : seule la dernière version est prise en charge
6.10

Comportement attendu

Avoir plus d'une méthode dans une classe avec le même nom et une signature différente (surcharge de méthode) et en sélectionnant (en double-cliquant sur le nom de la méthode) et en exécutant une méthode de test, il devrait exécuter la méthode sélectionnée seule.

Comportement réel

Il exécute toutes les méthodes portant ce nom.

Le problème est-il reproductible sur le coureur ?

  • [x] Éclipse

Exemple de cas de test

import org.testng.ITestContext;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;

public class TestNGIssue {

    <strong i="17">@Test</strong>
    public void test() {
        System.out.println("test without param");
    }

    <strong i="18">@Test</strong>
    public void test(ITestContext context) {
        System.out.println("test with param as itestcontext");
    }

    @Test(dataProvider = "data")
    public void test(String name) {
        System.out.println("test with param as string");
    }

    @DataProvider(name = "data")
    public Object[][] dataprovider() {
        return new Object[][] { { "name" } };
    }

}
test selection Feature request

Commentaire le plus utile

@Prakash-Saravanan - Je pense que c'est le comportement attendu. TestNG recourt à la réflexion pour trouver des méthodes, mais il ne différencie pas les méthodes en fonction de leurs signatures, mais recourt à la recherche de méthodes basées UNIQUEMENT sur les noms. Donc, pour l'OMI, ce n'est pas un problème, mais TestNG fonctionne comme prévu.

Tous les 4 commentaires

Lors de l'exécution en tant que fichier XML, il exécutera toutes les méthodes.
Est-ce également un comportement attendu avec Eclipse runner ?

@Prakash-Saravanan - Je pense que c'est le comportement attendu. TestNG recourt à la réflexion pour trouver des méthodes, mais il ne différencie pas les méthodes en fonction de leurs signatures, mais recourt à la recherche de méthodes basées UNIQUEMENT sur les noms. Donc, pour l'OMI, ce n'est pas un problème, mais TestNG fonctionne comme prévu.

Cela pourrait être une amélioration de la sélection des tests ou, au moins, testng peut avertir s'il trouve de nombreuses méthodes avec le même nom.

@krmahadevan @cbeust Qu'en pensez-vous ?

@juherr - Je pense qu'il est logique d'ajouter un avertissement (au moins) informant l'utilisateur de plusieurs versions surchargées de la même méthode de test.

Cette page vous a été utile?
0 / 5 - 0 notes