はむはむエンジニアぶろぐ

365日エンジニアリング

PHPUnit

PHPUnitの便利な機能を紹介する

この記事はPHP Advent Calendar 2015 - Qiita 14日目の記事です。 担当は@secret_hamuhamu です。 みなさんは、PHPのテスティングツールに何をお使いでしょうか? Behat?PHPSpec?PHPUnit? 今日は、PHPUnitの便利な機能をいくつか紹介したいと思います。 …

PHPのMatcherライブラリPHP Matcherを使ってみる

PHP MatcherというPHP用のマッチャーを見つけたので、使ってみた。 PHPUnitなどのテスティングツールと合わせて使うことができる。 マッチャーとは? テストの表現力を高めることができる アサーションの条件をより詳しくかける マッチャーを使うことで、複…

【PHPUnit】少し複雑な条件はassertThatを使う

PHPUnitや他のxUnit系に assertThat という少し複雑な条件を書くことができるアサーションがあります。 PHPUnitで、たまに使う assertThat を紹介してみようかなと思います。

PHPでDIをする

PHPでDI( Dependency Injection )をします。 DIとは、日本語訳で依存性の注入です。 依存性というのは、クラスから別のクラスを呼び出している状態です。 例えば、犬が鳴いたら猫も鳴く。 meow(); } } Dogクラスのbarksメソッドは、Catクラスに依存していま…

PHPUnit 壊れているテストを徐々に改良していく

PHPUnitで、テストを回した際、コケまくるなんて経験ありませんか? ...FFFFFFみたいに。 実装のリファクタリングを行ったとか、テストがコケたまま放置されていたとか色々あると思います。 TDD的にこれらのテストの修正を一気に行うことは、アンチパターン…

PHPUnitでカバレッジテストをやってみる

タイトルの通り、PHPUnitでカバレッジテストをやってみる。 Xdebugが必要なので、事前にインストールしておいてください。

PHP privateメソッドのテストをする

privateメソッドのテストどうするか議論ってテスト書いてる人なら必ずしたことありますよね? 私は、privateメソッドは、実装が隠されているのでprivateメソッドを呼び出しているpublicなメソッドさえテストすればいいと思っています。 privateメソッドの振…

Vim autocmdとユーザ定義コマンド使ってPHPUnitのテストを楽にする

Vimにはautocmdというイベントをトリガーにして、処理を実行するコマンドと ユーザ定義コマンドというユーザの任意のタイミングで処理を実行するコマンドがあります。 これらのコマンドを使ってPHPUnitのテストを楽にしてみる。定型文を自動化しようというも…