PHPUnit - Pas de tests exécution de' lors de l'utilisation de fichier de configuration

Le Problème

Pour améliorer ma qualité de code, j'ai décidé d'essayer d'apprendre comment tester mon code à l'aide de Tests Unitaires à la place de mon médiocre-à-meilleures solutions de test.

J'ai décidé d'installer PHPUnit à l'aide de compositeur pour le personnel de la bibliothèque qui me permet de parvenir à des fonctions de base de données. Au début, je n'ai pas de fichier de configuration pour PHPUnit et quand j'ai couru des commandes comme:

$ phpunit tests/GeneralStringFunctions/GeneralStringFunctionsTest

Veuillez noter que ceci est un terminal de commande, donc je ne comprend pas le .php extension. Le GeneralStringFunctionsTest visée ci-dessus est en fait un GeneralStringFunctionsTest.php fichier.

La sortie est ce que j'attendais:

Temps: 31 ms, Mémoire: 2.75 Mo

OK (1 essai, 1 affirmation)

J'ai ensuite essayé d'utiliser un fichier de configuration pour charger automatiquement le test de suite au lieu d'avoir à les saisir manuellement dans le fichier à chaque fois. J'ai créé un fichier appelé phpunit.xml dans mon répertoire racine, et entré le code suivant dans le fichier: http://pastebin.com/0j0L4WBD:

<?xml version = "1.0" encoding="UTF-8" ?>
<phpunit>
    <testsuites>
        <testsuite name="Tests">
            <directory>tests</directory>
        </testsuite>
    </testsuites>
</phpunit>

Maintenant, lorsque je lance la commande:

phpunit

J'obtiens le résultat suivant:

PHPUnit 4.5.0 par Sebastian Bergmann et les contributeurs.

De lecture de Configuration de /Users/muyiwa/Projects/DatabaseHelper/phpunit.xml

: 16 ms, Mémoire: 1.50 Mb

Pas de tests exécutés!

Dans le cas où il est utile, mon répertoire de la structure est comme suit:

src - répertoire de premier niveau (avec tout mon code source)

tests - répertoire de premier niveau (avec tous mes tests, structuré le même que celui de mon src dossier)

vendeur - Compositeur tiers des fichiers

J'ai aussi le compositeur json et le fichier de verrouillage, ainsi que le phpunit fichier xml dans le haut niveau en tant que fichiers.

Choses que j'ai Essayé de

  • Changer le répertoire dans phpunit.xml à tests/GeneralStringFunctions
  • Changer le répertoire dans phpunit.xml à ./tests
  • Le déplacement de la phpunit.xml fichier à la tests répertoire et ensuite de changer le répertoire à ./ au lieu de tests.
  • L'ajout d'un suffixe attribut de l'annuaire de tag dans phpunit.xml pour préciser les "Tests", comme l'explicite le suffixe.
  • Est tests/GeneralStringFunctions/GeneralStringFunctionsTest un dossier ou un nom de fichier?
  • C'est un nom de fichier, il est en fait appelé GeneralStringFunctionsTest.php. Dans l'interface de ligne de commande, je n'ai pas entrer dans le .php extension parce qu'il a fait sans lui.
  • OK, alors votre configuration devrait fonctionner. Btw, si vous spécifiez un suffixe, il devrait être Test.php plutôt que Test dans votre cas, mais cependant, vous êtes libre d'omettre que, depuis Test.php est la valeur par défaut.
  • Merci pour le heads up! Avez-vous une idée pourquoi mon test n'est pas en cours d'exécution avec le fichier de configuration phpunit.xml?
  • Pourquoi ne pas nous montrer le fichier de configuration?
  • Salut, j'ai fait, désolé si c'était pas trop clair: pastebin.com/0j0L4WBD.
  • Quel système d'exploitation utilisez-vous? qui version de PHP?
  • Hey, je suis en utilisant PHP 5.6.2 et OS X Yosemite.

InformationsquelleAutor Muyiwa Olu | 2015-03-27