タグ

programmingとBDDに関するatsushifxのブックマーク (2)

  • 状態ではなく、振る舞いをモックせよ

    TL;DR GOOS『実践テスト駆動開発』で触れられている「ロールをモックせよ」について、違った角度で解説ドメインモデルを豊かにすることでコードがシンプルになる例Mock Behaviors, Not Statesユニットテストを記述する際、テスト対象のオブジェクトが利用しているオブジェクト(依存オブジェクト、隣接オブジェクト)はモックオブジェクトにして、テストしたい状況をテストコード側からコントロールします。しかし、闇雲にモックを使ってテストを記述すれば良いわけではありません。今回は、モックが有効に機能するテストとはどういったものなのかを解説します。 サンプルコード簡単なサンプルで説明します。Extract Till You Dropのモデルと近いものを使います。グループ、メンバー、およびグループリポジトリがあります。グループオブジェクトはインメモリでは所属メンバーの情報を保持しておら

    状態ではなく、振る舞いをモックせよ
    atsushifx
    atsushifx 2013/11/08
    TDD\BDDでの注意点。テストで大事なのは中を意識させないこと。そのクラス/モジュールの入出力・振る舞いをテストするということ。
  • 日本語テストメソッドについて

    14. ASP.NET MVC の例 ※MvcHtmlStringTest.cs [Fact] public void ToStringReturnsEmptyStringIfOriginal StringWasNull () { // Null から MvcHtmlString インスタンスを // 生成した時、ToString() が // String.Emptyを返すことを確認しています } 16. Entity Framework の例 ※DatabaseInitializerTests .cs [Fact] public void DropCreateDatabaseIfModelChanges_throws_if_database_e xists_and_model_does_not_match_with_Migrations_enable d() { // DB マイグレー

    日本語テストメソッドについて
    atsushifx
    atsushifx 2013/09/15
    そもそもスライドのメソッド名がいけてない。後半で指摘しているようにnamespaceなどを用いてテストを適切に書けばすむ。テストコード自体の読みやすさ、Readbilityなどの品質が問題で、日本語にすれば解決するわけじゃな
  • 1