web-dev-qa-db-ja.com

PHPunit Uncaught Error:未定義メソッドPHPUnit_Util_Configuration :: getTestdoxGroupConfiguration()の呼び出し

Laravel 5.4に関連しているかどうかはわかりません。 laravel 5.4をインストールした後、変更を加えずにphpunitコマンドを実行すると、Uncaught Error: Call to undefined method PHPUnit_Util_Configuration::getTestdoxGroupConfiguration()が取得されますが、php artisan duskを実行すると正常に実行されます

c:\xampp\htdocs\ublocker>phpunit
PHP Fatal error:  Uncaught Error: Call to undefined method
PHPUnit_Util_Configuration::getTestdoxGroupConfiguration() in C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php:1046
Stack trace:
#0 C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php(167): PHPUnit_TextUI_TestRunner->handleConfiguration(Array)
#1 C:\xampp\php\pear\PHPUnit\TextUI\Command.php(176): PHPUnit_TextUI_TestRunner->doRun(Object(PHPUnit_Framework_TestSuite), Array)
#2 C:\xampp\php\pear\PHPUnit\TextUI\Command.php(129): PHPUnit_TextUI_Command->run(Array, true)
#3 C:\xampp\php\phpunit(46): PHPUnit_TextUI_Command::main()
#4 {main}
thrown in C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php on line 1046

Fatal error: Uncaught Error: Call to undefined method PHPUnit_Util_Configuration::getTestdoxGroupConfiguration() in C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php:1046
Stack trace:
 C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php(167): PHPUnit_TextUI_TestRunner->handleConfiguration(Array)
C:\xampp\php\pear\PHPUnit\TextUI\Command.php(176): PHPUnit_TextUI_TestRunner->doRun(Object(PHPUnit_Framework_TestSuite), Array)
C:\xampp\php\pear\PHPUnit\TextUI\Command.php(129): PHPUnit_TextUI_Command->run(Array, true)
C:\xampp\php\phpunit(46): PHPUnit_TextUI_Command::main()
{main}
thrown in C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php on line 1046

c:\xampp\htdocs\ublocker>phpunit
PHP Fatal error:  Uncaught Error: Call to undefined method PHPUnit_Util_Configuration::getTestdoxGroupConfiguration() in C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php:1046
Stack trace:
#0 C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php(167): PHPUnit_TextUI_TestRunner->handleConfiguration(Array)
#1 C:\xampp\php\pear\PHPUnit\TextUI\Command.php(176): PHPUnit_TextUI_TestRunner->doRun(Object(PHPUnit_Framework_TestSuite), Array)
#2 C:\xampp\php\pear\PHPUnit\TextUI\Command.php(129): PHPUnit_TextUI_Command->run(Array, true)
#3 C:\xampp\php\phpunit(46): PHPUnit_TextUI_Command::main()
#4 {main}
thrown in C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php on line 1046

Fatal error: Uncaught Error: Call to undefined method PHPUnit_Util_Configuration::getTestdoxGroupConfiguration() in C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php:1046
Stack trace:
#0    C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php(167): PHPUnit_TextUI_TestRunner->handleConfiguration(Array)
#1 C:\xampp\php\pear\PHPUnit\TextUI\Command.php(176): PHPUnit_TextUI_TestRunner->doRun(Object(PHPUnit_Framework_TestSuite), Array)
#2 C:\xampp\php\pear\PHPUnit\TextUI\Command.php(129): PHPUnit_TextUI_Command->run(Array, true)
#3 C:\xampp\php\phpunit(46): PHPUnit_TextUI_Command::main()
#4 {main}
thrown in C:\xampp\htdocs\ublocker\vendor\phpunit\phpunit\src\TextUI\TestRunner.php on line 1046

c:\xampp\htdocs\ublocker>php artisan dusk
PHPUnit 5.7.7 by Sebastian Bergmann and contributors.

F.                                                                  2 / 2 (100%)

これを修正する方法はありますか?

21
ishadif

グローバルにインストールされたバージョンは、最低限必要なバージョンを満たしていないようです。実行してみてください

phpunit --version

5.1のようなものが得られるはずです。 php artisan duskコマンドは、vendor/bin/phpunitにある異なるバージョンを使用します。そのため、代わりにこのバージョンを使用することもできます。入力するだけです:

vendor/bin/phpunit

phpunitの代わりに。動作する場合は、グローバルphpunitバージョンをアップグレードする必要があります。

60
arku

私の場合、次のコマンドはWindows環境で\ 代わりに /

vendor\bin\phpunit
7
Taranjeet Singh

Laravel 5.4で同じ問題が発生しました。これは私にとってはうまくいきました。

ステップ1:コンポーザーを更新する

composer update

ステップ2:phpunitを実行する

vendor/bin/phpunit

ファイルを指定して特定のテストを実行できます

vendor/bin/phpunit tests/Feature/ExampleTest.php
7
mpalencia

Homestead laravel 5.6で同じエラーが発生しました。ユーザーからphpunitコマンドを実行すると正常に動作しますが、Sudoで実行するとエラーが発生しました。このコマンドをユーザーから実行しないでください。須藤もあなたのために働くかもしれない

0
Mhmd

1つの解決策は、ベンダー/ビンをパスの先頭に追加することです。 bashを実行しているOSのようなUnixでは、.bashrcファイルの最後に次を追加できます。

export PATH=vendor/bin:$PATH

Windows 10では、システムプロパティ詳細タブにアクセスし、環境をクリックして、Path環境変数にアクセスできます。変数...ボタン。

どちらにしても、vendor/binをパスの先頭に挿入すると、OSは./vendor/binでphpunitを探します。 laravelプロジェクトのルートにいる場合は、Laravelに含まれる実行可能ファイルが見つかります。そうでない場合は、グローバルバージョンの使用に進みます。

0
JohanTux