Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Symfony勉強会#6 オブジェクトの振舞を明確化するためのモックについて

Symfony勉強会#6 オブジェクトの振舞を明確化するためのモックについて

hidenorigoto

June 30, 2012
Tweet

More Decks by hidenorigoto

Other Decks in Technology

Transcript

  1. PHPUnit_MockObject • モックを生成 • getMock() • getMockBuilder() • disableOriginalConstructor() •

    エクスペクテーション定義 • expects() 8 12೥6݄30೔౔༵೔
  2. PHPUnit_MockObject • モックを生成 • getMock() • getMockBuilder() • disableOriginalConstructor() •

    エクスペクテーション定義 • expects() • method() 8 12೥6݄30೔౔༵೔
  3. PHPUnit_MockObject • モックを生成 • getMock() • getMockBuilder() • disableOriginalConstructor() •

    エクスペクテーション定義 • expects() • method() • will() 8 12೥6݄30೔౔༵೔
  4. テスト対象をモック化 • これは特殊パターン • 通常はテスト対象オブジェクトはモックにしない • テスト対象と同一オブジェクトのメソッド呼び出し を検証する必要があったため、テスト対象そのもの をモック化している。 •

    Phake等でいうパーシャルモック • getMockBuilder()でモック化した後、必要なメソッ ドをsetMethods()で指定。その後expects()でエク スペクテーションを定義。 12 12೥6݄30೔౔༵೔
  5. オブジェクト指向開発 • Growing Object- Oriented Software, Guided by Tests(Steve Freeman/Nat

    Pryce) • 通称「GOOS本」 • 責務駆動設計とモッ クフレームワークを ベースにテスト駆動 開発する 25 12೥6݄30೔౔༵೔