メシのタネ

めしのたねになるIT情報配信サイト


phpstorm+docker-composeでphpunitを使う(Windows向け)

,

  1. Webプログラム
  2. PHP
  3. phpstorm+docker-composeでphpunitを使う(Windows向け)

久々に、phpunitの設定をしたら、上手く設定できなかったので、やり方を詳し目に記事にすることにしました。本記事の対象者は、phpstormを利用中で、docker-composeにてローカルサーバー構築済みの方になります。さらに、Laravelを利用していてphpunit使いたい人だともっと分かりやすいはずです。なぜなら、今自分がそうだからです。ちょっと長いですが、一杯スクショ取ったので、分からない人が居たら是非ためしてください。

デバックに使うPHPを登録する

デバッグ用のPHPを登録します。書き出してみると7項目あったので、箇条書きにしました。

手順
  1. phpstormの上部メニューの[ファイル(F)]から[設定]をクリック
  2. 大項目[言語&フレームワーク]から[PHP]をクリック
  3. CLI インタープリター: 一番右の[…]をクリック
  4. ポップアップで設定画面が開くので画面左側の+をクリック
  5. CLIインタープリタの選択項目が出現するので一番上を選択
  6. ポップアップでインタープリタ構成の設定画面が開くので[Docker Compose]を選択
  7. 構成ファイルのフォルダマーククリックして自分のdocker-compose.ymlを選択する

3番からがややこしいので、画像を用意します。

2番までやると、こんな画面が開きます。

2番の状態

3番で言ってるのは、青枠のすぐ隣にある[…]です。

[…]ボタン

分かりづらいので赤枠で囲いました。こいつです。

クリックすると、この画面がでます。ここも分かりづらいですが、+ボタンを押します。

すると、色々出てきますが、一番上のFrom Dockerから始まるsome thingを選びます。

この画面がポップアップしてくるので、Docker Composeを選択します。

Docker Compose選択すると、入力項目色々出てきますが、①のフォルダーマーククリック②がポップアップするので、+をクリック③が出るので、自分のdocker-compose.ymlを選択

すると、内容に応じて、サービスの選択ができるので、利用したいサービスを選択します。

暫くロードがあった後、登録が完了します。これでPHPの登録が完了しました。

phpstormテストフレームワークの設定

phpunitの設定をします。

手順
  1. phpstormの上部メニューの[ファイル(F)]から[設定]をクリック
  2. 大項目[言語&フレームワーク]から[PHP]を展開
  3. テスト・フレームワークをクリック
  4. 表示されている画面内の+ボタンをクリック
  5. PHP Unit by Remote InterpreterをクリックしてPHP選択
  6. 画面上部メニューの実行から、構成の編集をクリック
  7. phpunit.xmlを選択して、表示された画面の構成ファイルで定義を選択

というわけでまた一緒にやっていきましょう。下記画像は、3番の状態です。

このボタンを押すと、選択肢が出るので、赤枠で囲ったPHPUnit by Remote Interpreterを選択します。

すると、登録したPHPを選択する画面に遷移します。

さっき登録したPHPを選択します。

すると、設定画面が閉じて、元の画面に戻るので、[実行]をクリックして[構成の編集]をクリックします。

恐らくphpunit.xmlができていると思うので選択して、公正ファイルを定義を選択して、画面下部のOKボタンを押します。

画面右側の再生ボタンを押すとphpunit.xmlの記述内容に応じてテストが始まります。

ほぼ何もしてない、自分の場合コンソールがこのようになりました。

設定は以上となります。お疲れ様でした。皆さんのテストライフが良きものになりますように!

筆者は2020年より独立して、山王ウェブ設計事務所という屋号で活動しております。愛知県名古屋市中川区山王付近で活動していますので、実装方法が分からない、作成したけど本当に大丈夫か不安、人手が足りない、等、何かお困りであれば、下記Webサイトのメールフォームからお気軽にお問合せ下さい!

山王ウェブ設計事務所ホームページ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

若い頃、「仕事中にハマったこと」や「誰かに共有したい技術的な気づき」をアウトプットしたくてブログを始めましたが、勢い任せでよく分からない記事を大量生産し、あえなく飽きて終了。

改めて今、キャリア15年分の経験や知識が、これからITエンジニアを目指す方や、同じような課題で悩んでいる現役エンジニアの「メシのタネ」になるような記事を残したいと思っています。
※過去の記事は見ると精神が崩壊するため、そっとしておいてください。

🛠 経歴という名の珍道中:
文系Fラン → 広告営業 → Web営業 → 通信営業 → Web進行 → 出版 → Web媒体運用 → ソフトウェアハウス → SES → フリーランス

専門教育も受けず、転職歴も多数。履歴書はまるで時系列の事故記録のようですが、試行錯誤を重ね、なんとかエンジニアとして食べています。

このブログでは、そんな「履歴書クラッシャー型エンジニア」が送る、
名古屋一敷居の低い、実務に役立つ技術ブログを目指します。

Laravel
Laravel 12、「コード 1 行も書き換えず未来へ」──静かな革命の手順書New!!
Laravel
LaravelのMiddlewareって意味あるの?仕組み・使いどころ・やらかしまで整理してみたNew!!
Laravel
ServiceProviderって何してるの?DIの背後で動いてるやつの正体New!!
Laravel
LaravelのサービスコンテナとDI、「書いてるだけで動く」コードの正体New!!
Laravel
Laravelのアーキテクチャ、実は誰もわかってない説New!!
ガジェット
【解説】Bluetoothヘッドホンでマイクが使えない理由と回避策まとめ(Mac対応)