web-dev-qa-db-fra.com

Erreur de phpunit dans PhpStorm

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.

23
b85411

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.

14
b85411

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!

14
suud

Dans mon cas, le problème était dû aux raisons suivantes:

  1. J'ai installé phpunit en utilisant composer avec la commande 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).
  2. L'IDE exécute l'ancienne version de phpunit qui attend des noms de classes sans espaces de noms (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)) 

10
Murat Erkenov

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: 

  • "utiliser le chargeur automatique du compositeur"
  • Chemin d'accès au script: 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.

5
Fx32

J'ai eu le même problème avec PHP7.1 et PHPUnit 6.3 via composeur, mais j'ai résolu via phpunit.phar. (dans les options: sélectionnez le chemin d'accès à phpunit.phar, cliquez sur télécharger et cliquez sur rafraîchir) 

 enter image description here

3
Karima Rafes

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.

3
powpow12

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. 

0
Yevgeniy Afanasyev

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.

0
Digvijay