web-dev-qa-db-fra.com

Exécutez un fichier ou une carte dans phpunit

J'utilise laravel et j'ai écrit des fichiers de test. Mais comment puis-je exécuter un seul fichier? Quand je le fais par exemple: phpunit tests/resulttesting/school/deleteSchoolForRealTest Il renvoie une erreur:

Impossible d'ouvrir le fichier "tests/resulttesting/school/deleteSchoolForRealTest.php".

Lorsque je lance phpunit, il exécute tous mes tests. Et comment puis-je exécuter un seul dossier? Je suis sur un Mac.

13
Jamie

Vous faites tout correctement.

1) Première façon d'ajouter le dossier . Ma façon correcte était:

phpunit tests/EWalletTest

J'ai eu les mêmes erreurs quand j'ai oublié de démarrer à partir du dossier "tests"

phpunit EWalletTest

J'ai eu

Impossible d'ouvrir le fichier "EWalletTest.php".

2) Le filtre est une autre option. lire ici exemple:

phpunit --filter EWallet

Exécute uniquement les tests dont le nom correspond au modèle d'expression régulière donné.

Cela signifie que vous aurez exécuté les fichiers EWalletTest et EWalletFooTest et les cas de test d'autres fichiers avec des noms comme `test_EWallet_with_Australian_dollar.

20

Utiliser l'option de filtre

phpunit --filter=EWalletTest
11
Mohammed Radwan

Utilisation de phpunit.xml

l'option @group peut être utilisée sur les classes et les méthodes.

classe A

/**
 * @group active
 * */
class ArrayShiftRightTest extends TestCase
{
}

classe B

/**
 * @group inactive
 * */
class BinaryGapTest extends TestCase
{    
}

dans phpunit.xml

<groups>
    <include>
        <group>active</group>
    </include>
    <exclude>
        <group>inactive</group>
    </exclude>
</groups>

les classes appartenant au groupe actif seront exécutées.

0
f_i