PHPUnit par le Compositeur et PhpStorm
Je vais maintenant essayer pendant des heures pour l'installation de PhpStorm pour les tests unitaires. Quoi que je fasse, j'obtiens ce
Process finished with exit code 1
Cannot find PHPUnit in include path ...
PHPUnit est (via la ligne de commande) accessible à partir de n'importe où; j'ai mis le bon chemin et ont ajouté PHPUnit pour les bibliothèques externes. Pas de chance.
Est-il possible à tous ou il ne fait que travailler avec des installations via la POIRE? J'ai travaillé par le biais de l'ensemble de ces questions ici, je suis sur Mac et PHPUnit est en cours d'exécution en douceur via l'interface CLI.
- Vous devez ajouter le chemin vers PHPUnit classes dans include_path variable php.ini. Devrait fonctionner (désolé, pas testé moi-même depuis que je ne suis pas en utilisant Compositeur). Si cela ne va pas aider, alors seulement youtrack.jetbrains.com/issue/WI-13429
- Déjà voté celui là 🙂
- c'est une fonctionnalité vraiment nneds de figurer bientôt dans PHPStorm.
Vous devez vous connecter pour publier un commentaire.
Patrick Visma posté la solution sur http://youtrack.jetbrains.com/issue/WI-13429:
Modifier la configuration de votre phpunit.xml dans PHPStorm, et le jeu de l'Interprète options comme ceci:
@aderuwe réponse fonctionne, mais que la config n'est pas portée par projet, c'est pour tous les projets. Depuis PHPStorm 6 (en réalité, même EAP version
PS-126.260
) vous pouvez effectuer les opérations suivantes:File
->Settings
->PHP
->PHPUNIT
.Use custom loader
et puis entrez leautoload.php
de fichiers à partir de vos projets répertoire des vendeurs. Cette autochargeur de chargement automatique de toutes les dépendances sont gérées par le Compositeur (y compris PHPUnit).phpunit.xml.dist
de votre projetapp
répertoire).Qui doit être répété par projet, mais ce qui suit doit être fait une fois.
Vous avez besoin de vous configurer les valeurs par défaut dans PHPStorm correctement.
Run
->Edit Configurations...
ou cliquez simplement sur le menu déroulant de la barre d'outils et sélectionnezEdit Configurations...
.Defaults
->PHPUnit
Test Scope
, sélectionnezDefined in configuration file
Interpreter options
textfield est videPHPUnit
(ci-dessusDefaults
) et de supprimer toute entrée en découlent (de sorte que la prochaine fois que vous un test sur un fichier en particulier, etc. il va en créer une nouvelle, mais à l'aide de la nouvelle valeur par défaut).phpunit.xml.dist
à inclure dansDefault Configuration File
Paramètres. Pourquoi ne pas la réponse complète toujours?????~/.composer/vendor/autoload.php
Je suppose que PhpStorm s'appuie sur la recherche de PHPUnit dans l'include_path de php.ini elle-même, n'est pas de votre projet.
Vous pouvez essayer d'ajouter votre projet vendor/bin pour php.ini include_path, mais en fin de compte, cela semble PhpStorm pourraient bénéficier de l'appui compositeur installer et exécuter le phpunit du projet lui-même, s'il est disponible. En fait il y a un problème ouvert sur leur tracker, donc je vous recommande de connexion il et upvote c': http://youtrack.jetbrains.com/issue/WI-13429
Je tiens à ajouter que la version actuelle de PHPStorm (7.1), fonctionne bien avec le version précédente de PHPUnit (3.7). Et il ne fonctionne pas avec 4.0 et ci-dessus. Si vous avez téléchargé phpunit.phar de http://phpunit.de, vous pouvez pointer PHPStorm via les Paramètres => PHP => PHPUnit => Chemin de phpunit.phar
PHPStorm a une coutume PHPUnit coureur de script (
ide-phpunit.php
) qu'il utilise en interne pour traiter les différentes versions de PHPUnit et à faire de l'intégration EDI et c'est justement en se basant sur le chemin d'inclusion, et laPEAR
dossier de mise en page.À faire qu'il s'exécute:
Vous pouvez simplement l'installer via le compositeur et l'ajouter comme un exécutable normal (ant/phing/native de la tâche), mais vous perdrez toutes les brillantes fonctions PHPStorm offre comme la barre de progression, en sautant à un test en échec et la couverture de code de support.
Donc, à partir du code, vous pouvez dire que vous avez besoin pour ajouter un dossier appelé nommé
PHPUnit
à l'un des endroits dans votre chemin. L'ajout d'vendeur peut y aider, mais gardez à l'esprit il doit correspondre cas quand vous le faites.Jusqu'à ce que PHPStorm prend en charge l'utilisation de PHPUnit de compositeur ou d'un phar je ne pense pas que vous obtiendrez une meilleure intégration (
http://youtrack.jetbrains.com/issue/WI-13429
) avec l'aide de la poire, mais le piratage de votre chemin de peut que.La PHPStorm gars a fait quelques mises à jour sur le coureur de 3,7 et sont généralement très sensible aux changements de PHPUnit 🙂
J'ai trouvé que si je les ai tous mes dans le répertoire "Test", et une suite de tests définies dans un fichier de configuration "Test/phpunit.xml"; je peux simplement l'installation d'un "Run Configuration" comme suit:
Phpstorm Run|boîte de dialogue de Configuration