symfony/phpunit-bridge を使用するように PhpStorm を設定する方法 質問する

symfony/phpunit-bridge を使用するように PhpStorm を設定する方法 質問する

PhpStorm IDEの設定に問題がありましたhttp://symfony.com/doc/current/components/phpunit_bridge.htmlSymfony 3.3 で作業中に。

phpunit.phar代わりにダウンロードしbinて使用することにしました。

Symfony 3.4 (および Symfony 4)phpunit.xml.distには、すぐに使える機能すらないため、簡単に使用できないという問題がありますphpunit.phar

flex を使用して PHPUnit をインストールしました:

composer req phpunit

これにより、phpunit.xml.dist が作成され、次のコマンドでコマンドラインからテストを実行できるようになりました。

php bin/phpunit

しかし、やはり PhpStorm でそれを使用することはできませんでした。

そこでダウンロードしphpunit.phar、提供されている phpunit.xml.dist と連携して動作できるようになりました。

質問1:PhpStorm IDE で phpunit-bridge を使用する方法はありますか?

質問2:Symfony 4 (phpunit-bridge または標準の phpunit.phar) のベスト プラクティスは何ですか?

ベストアンサー1

私が通常行うことは、PHPStorm 上の phpunit テスト フレームワークを、.phpunitブリッジによって作成された秘密のディレクトリにポイントすることです。ここに画像の説明を入力してください

「phar」ファイルの場所は次のとおりです。

bin/.phpunit/phpunit-(major).(minor)/phpunit

または場合によっては:

vendor/bin/.phpunit/phpunit-(major).(minor)/phpunit

この後、phpunitユニットテストの実行時に、指定された実行可能ファイルが正しく呼び出されますが、オプションが付きます--no-configuration。これにより、Composer によって生成されたオートローダーがどこにも指定されていないため、オートロードの問題 (多くの「クラスが見つかりません」エラー) が発生する可能性があります。

phpunit.xmlこれを修正するには、プロジェクト内に次のような Composer のオートローダーを指定するファイルを用意する必要があります(これは一般的な方法です)。

<phpunit bootstrap="vendor/autoload.php">

これをphpunit.xml「デフォルト構成ファイル」オプションで指定すれば、準備は完了です。


phpunit-bridge を使用した phpstorm について: カスタム スクリプトとしては可能ですが、優れたインターフェイスは得られず、PHPStorm インターフェイスを介して特定のテストを実行 (およびデバッグ) することもできません。

おすすめ記事