はじめに
皆さん、開発の時にユニットテストは書いているでしょうか。
ユニットテストを書いていたらどのように実行しているでしょうか。
ユニットテストはコードの保守性を上げるのに重要ですが、ユニットテストを実行するのにコストがかかっていると、時間ももったいないし、テストを書くのも面倒になります。
- 新しく実装したクラスのテストを実行したいけど、特定のテストだけ実行するコマンドがぱっと書けない
- かといって、とりあえず全部のテストを実行させると時間がかかる
- 毎回 GitHub に Push して CI にまかせているけど、時間がかかる
僕は、会社の人から教えてもらって依頼 IntelliJ (IDE) 上でテストを実行できるようにしています。
このようにコードの左側に実行ボタンが出現し
ワンクリックで実行できます。
これで開発効率は劇的にアップします。
もちろん、PHP以外の言語でも可能ですし、おそらく IntelliJ 以外の IDE でも可能かと思います。VSCode も対応しているようでした。Docker上で実行することもできるし、リモートのサーバーにSSHさせて実行することもできます。
Visual Studio CodeがJUnitに対応。エディタ上で単体テストの実行、テストのデバッグなどが可能に - Publickey
https://www.publickey1.jp/blog/17/visual_studio_codejunit.html
↓ go の場合
IntelliJ PHP の設定方法
IntelliJ の Preferences を開きます。 PHP のインタプリタは設定しておきます。
Composer の設定をします
PHPUnit の PATH を設定します。
これだけで実行ボタンが出てきます。
まとめ
これだけで IDE 上でユニットテストが実行できて、開発効率が格段に上がります。
IDE は高機能で何でもできるので、あらゆる機能を IDE 上に乗せていくのが開発効率アップのコツだと思っています。
僕は以下のようなことをすべて IDE で行っています
- ユニットテストの実行
- DB のデータ確認
- HTTP リクエストを送って動作確認
HTTP リクエストの動作確認を IntelliJ 上で行う方法は別の記事にも書いてあります。
CURL の代わりに IntelliJ でカンタン API の動作確認【JetBrains IDE】 - Qiita
https://qiita.com/yoshikyoto/items/39a40c1b59e2bcba8c7f
VSCode でも IntelliJ でもいいですが、せっかくの IDE を最大限活用して効率の良い開発を。