タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

PhakeとPHPUnitに関するgt-r-blazeのブックマーク (2)

  • PHP の ::class を使うとテストコードがスッキリするよね、という話 - 雑文発散(2014-03-12)

    ▼ [PHP] PHP の ::class を使うとテストコードがスッキリするよね、という話 会社でコードレビューをして貰っているときに ClassName::class という表記のコメントを貰った。え?「::class」ってなに?と思って調べてみると、PHP 5.5 からこの記法が追加されていた。 PHPマニュアル - クラスの基礎 ::class PHP 5.5 以降では、class キーワードでクラス名の解決ができるようになりました。 ClassName クラスの完全修飾名を文字列で取得するには、 ClassName::class とします。 これは、 名前空間つきのクラスと組み合わせると特に便利です。 これを知ってなるほど!!!と思って、さっそく使い始めた。 例えば、Phake でモックを作るときに、今まではこんな風に書いていた。 これを ::class で書き換えると、こうなる

    PHP の ::class を使うとテストコードがスッキリするよね、という話 - 雑文発散(2014-03-12)
  • TDD ランダム性があるルーレットのテスト

    継続的インテグレーションするならテストは必須ですよね。 ただテストしにくい仕様もたまにあります。 ランダム性があるテストは、書きにくいものです。 今回は、ランダム性あるルーレットクラスを作ってランダム性をカバレッジしたテストをPHPで書きます。 ##### 環境構成 * PHP 5.4 * PHPUnit 4.2 * Phake (モッキングフレームワーク) <br> ##### ルーレットの仕様 #### ルーレット(Rouletteクラス)の仕様 * ルーレットは、1~5等賞を与えること * 等賞は、ランダムな確率にすること #### 確率の定義 * 1等 0.1% * 2等 3% * 3等 10% * 4等 30% * 5等 56.9% 以下、サンプルソースになります。 <pre class="brush: php"> /** * ルーレットクラス */ class Roulette

  • 1