前回のおさらい
前回は、
- PHPのDocker環境を作る
- PhpStormでPHPをコマンドラインで実行&デバッグ
- PhpStormでPHPをブラウザで実行&デバッグ
までやりましたね!
次はテストコードの実行、タスク管理ツールとの連携という実践的な内容について学んでいきます。
PhpStormでPHPUnitを実行してみよう
テストコード実行
tests/フォルダ配下のテストしたいファイルやフォルダを右クリックしてRUNするとテストが実行されます。
PhpStormがソースコードを見てこれはテストコードだと判断したら、PHPUnitで実行してくれます。それもdocker上のPHPでですよ!(まぢStormは気が利くね~)
テストコードをステップ実行
テストコードにbreak pointをつけて、虫アイコンをクリックします。
ここでDebugのすごいとこを紹介!STEP実行で気になる行まで移動して、その時の変数をvar_export形式(ソースに貼り付けたらすぐ使えるね!)やjson_encode形式でコピーしてくれるんですよ!どんだけ気が利くヤツなんだ!!
カバレッジ計測
xdebugによるprofile
ちょっとしたprofileなら、xdebugを使ってこんな感じでやってくれます。XHProfみたいだったら最高なんだけど、そこまでじゃありません。。
PhpStormでDocker上のMySQLにアクセスしてみよう
こんな感じで接続をつくってやります。
はじめての時は、mysqlドライバをダウンロードしてみたいなのがでるので、それをクリックしてインストールしてください。赤枠に注意して入力し終わったら[Test Connection]をクリックしてテストが通ったら、OKしてください。
passwordはoneforallallinone
です。
テーブル表示されたデータは、CSV・TSV・SQL形式はもちろんカスタマイズすればbulk-insertのSQLでダンプとかPHPの配列形式でダンプなどいろんな形式で出力できてとっても便利です。
PhpStormでGit&Redmineの連携をしてみよう
PhpStormの簡単なGit連携
まだGitと連携されていない場合は、VCSのEnable Version Control integrationでGitを選びます。
するとこのようにGitをPhpStormで簡単に操作できるようになります。
Redmineの準備
まず、RedmineのDockerをGitで取ってきましょう
$ cd /c/Users/your_account/PhpstormProjects
$ git clone https://github.com/albyte/docker-redmine.git
$ cd docker-redmine
$ docker-compose up -d
しばらく待って、下記にアクセスするとログイン画面が表示されますので、ID/PWを入れます。
http://localhost:8888/
ID/PW admin / admin
その後新しいパスワードがどうだこうだ聞かれますので、適当に入力して進めます。
チケットが発行できるようにロールとステータスとトラッカとワークフローや優先度とかいろいろをざっくり設定します。
なんか面倒なので、省略。。
PhpStormとRedmineを連携させる
こんな感じでチケットからtaskとbranchとchange listが作成されます。
Git連携だけでも十分便利ですが、task連携するとなんというか火打ち石からライターのような感動が待ってます。
便利なplugin
pluginインストール方法
SettingsのPluginsでいろいろあるので、探してみてください。
おすすめplugin
Grep Console
BashSupport
PlantUML diagramming tool integration
おわりに
いままでEclipseやNetBeansを使ってましたが、今年の春くらいにPhpStormに出会い、うわ!英語じゃんって毛嫌いしてましたが、思ったよりすぐ慣れてStormの虜になりました。
PhpStormとDockerとの連携については、まだまだ不満もありますが、この前docker-composeに対応してくれてますます便利になりました。
ほんとPhpStormさいこー!
P.S.
ほんとはSlim3でも使ってちゃんとしたサンプルを用意したかったのですが、年末は何かと忙しいので、最後のほうは文章も含めかなりテキトウなことになってしまいました。。
全然最強じゃないじゃん!むしろ最弱じゃん!って思われたかた、期待させてごめんなさいm(_ _)m