2010-12-02 5 views
27

Est-il possible de spécifier quelle suite de tests exécuter à partir d'un fichier de configuration via le programme de test de ligne de commande? Par exemple, si la configuration xml est la suivante:PHPUnit - Exécution d'une suite de tests particulière via le programme de test de ligne de commande

<phpunit ...> 
    <testsuites> 
     <testsuite name="My Test Suite 1"> 
      <directory>./MyTestSuite1/</directory> 
     </testsuite> 
     <testsuite name="My Test Suite 2"> 
      <directory>./MyTestSuite2/</directory> 
     </testsuite> 
    </testsuites> 
    ... 
</phpunit> 

Puis-je faire exécuter uniquement "My Test Suite 1"?

+1

Je sais que vous pouvez tester individuellement Testcase. Je ne suis pas sûr de suites. Essayez de faire quelque chose comme 'phpunit Suitename Path/To/AllSuites.php' ou autrement. En outre, vérifiez 'phpunit --help' et http://www.phpunit.de/manual/3.4/en/textui.html – Gordon

Répondre

9
  • vous pouvez utiliser la balise @group dans la documentation de classe pour indiquer le groupe, puis exécuter des tests uniquement sur ce groupe à l'aide --group
  • vous pouvez utiliser --filter uniquement exécuter des tests qui correspondent à une donnée regex

Mise à jour 2013

Comme la réponse de @ havg mentionne ci-dessous, il est maintenant possible d'exécuter des suites de tests individuels en utilisant phpunit --testsuite

+0

Cela fonctionne bien et est probablement le meilleur pari si les suites de test ne peuvent pas être exécutées individuellement. Merci! –

1

Avez-vous essayé lorsque vous exécutez phpunit à partir de la ligne de commande pour ajouter un chemin en tant que paramètre?

donc quelque chose comme

phpUnit ./MyTestSuite1/ 

?

+0

Cela fonctionne à moins qu'une suite de tests ne couvre plusieurs répertoires qui ne partagent pas la même racine. Merci. –

38

I t phpunit --testsuite "My Test Suite 1"

+8

l'indicateur --testsuite n'existe pas avant la version 3.7 – moranjk

Questions connexes