J'exécute des tests dans PhpStorm et j'obtiens cette erreur. Est-ce que quelqu'un sait ce qui pourrait en être la cause?
Erreur irrécupérable PHP: La classe 'PHPUnit_TextUI_ResultPrinter' ne figure pas dans C:\Utilisateurs\administrateur1\AppData\Local\Temp\ide-phpunit.php à la ligne 249
J'exécute des tests dans d'autres projets, qui utilisent également ide-phpunit.php
et fonctionnent parfaitement.
Silly erreur de ma part ... simplement oublié d'ajouter phpunit comme une dépendance dans le projet. Pour toute autre personne qui obtient cette erreur, à composer.json, ajoutez:
"require-dev": {
"phpunit/phpunit": "3.7.*"
},
Et puis courez:
composer update
Cela a résolu le problème.
J'ai eu le même problème avec Ubuntu 16.10, phpStorm 2017.2 et Laravel 5.5
Corrigé en désinstallant phpunit de mon système Ubuntu avec
Sudo apt-get remove phpunit
Sudo apt-get install --autoremove
Mon phpStorm-Configuration (Fichier -> Paramètres -> Langages et frameworks -> PHP -> Frameworks de test)
Fonctionne très bien, maintenant!
Dans mon cas, le problème était dû aux raisons suivantes:
composer require phpunit/phpunit
. Je n'ai pas fait attention que par défaut, il utilisait php7 et qu'il installait phpunit6 qui a des noms de classes avec des espaces de noms (PHPUnit\TextUI\ResultPrinter
).PHPUnit_TextUI_ResultPrinter
)J'ai décidé de réinstaller phpunit
en exécutant la même commande composer que ci-dessus, mais sous php 5.6
(car il était important d'être compatible avec php5.6) et il a installé phpunit 5.7
. Mais il est possible d’utiliser une version plus récente de phpunit et php: Settings > PHP > PHPUnit :: "Use composer autoloader"
(définir le chemin de l’exécutable phpunit chez les vendeurs (c’était vendors/bin/phpunit
dans mon cas))
J'ai eu cette erreur en utilisant les différentes clés modificateur - F10 dans PHPStorm, car il ne savait pas où trouver le PHPUnit correct.
Dans les paramètres (ctrl-alt-s), recherchez PHPUnit. Dans mon cas, je voulais le définir comme suit:
full-path-to-project/vendor/autoload.php
(ce champ était vide pour moi, une erreur s'est produite dans la boîte de dialogue)Sinon, il essaierait d'utiliser une version en cache de la bibliothèque (/tmp/ide-phpunit.php
) à la place de la version du compositeur. Si vous préférez utiliser un binaire installé globalement, vous pouvez bien sûr utiliser l'option Path to phpunit.phar
.
Après la mise à jour vers le dernier compositeur, composer run-script drupal-phpunit-upgrade
, PHPStorm était toujours mappé sur l'ancienne version, même si je chargeais via l'autoloader. Je suis allé à Langues et cadres> Php> Tester les cadres et cliquez sur le bouton d'actualisation sur la même ligne que "Chemin d'accès au script".
Maintenant, ma version de PHPUnit lit 6.5.8.
Dans mon cas, dans les préférences de phpstorm -> php -> l'interpréteur de la CLI a été défini sur local, lorsqu'il a fallu utiliser le php 7 distant (Ubuntu).
Parce que j'utilise vagrant box pour que mon environnement soit configuré sur Ubuntu.
J'ai récemment rencontré l'erreur similaire PHPUnit_TextUI_ResultPrinter not found in TeamCity.php on line 19
J'utilise PhpStorm 2018.3.3
. Lors de l'utilisation d'un terminal depuis PhpStorm
$ phpunit
PHPUnit 7.5.1 by Sebastian Bergmann and contributors.
depuis mon système Ubuntu
$ phpunit --version
PHPUnit 5.1.3 by Sebastian Bergmann and contributors.
Je devais m'assurer que le système PHPUnit de mon système Ubuntu est mis à jour à 7.5.1. Alors voici ce que j'ai fait:
Sudo wget https://phar.phpunit.de/phpunit-7.5.1.phar
Sudo chmod +x phpunit-7.5.1.phar
Sudo mv phpunit-7.5.1.phar /usr/local/bin/phpunit
Ensuite, je suis allé sur PhpStorm: Fichier> Paramètres> Langage et framework> PHP> Testez Frameworks et assurez-vous que la version de PHPUnit est également 7.5.1
Et puis, depuis le terminal PhpStorm: phpunit
et les tests s’effectuaient parfaitement.