タグ

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

  • 関連タグはありません

タグの絞り込みを解除

tutorialとprogrammingとlibraryに関するyukungのブックマーク (8)

  • 心地良すぎるモックライブラリ Mockito 〜その3〜 - A Memorandum

    モックメソッドからの戻り値のデフォルト設定(Since 1.7) 引数をキャプチャしてアサーションで利用する(Since 1.8.0) 部分的に実メソッドを呼び出すモック(Since 1.8.0) モックのリセット(Since 1.8.0) 振舞駆動開発のためのエイリアス(Since 1.8.0) serializableモック(Since 1.8.1) 新しい@Captor, @Spy, @InjectMocks アノテーション(Since 1.8.3) タイムアウト検証(Since 1.8.5) 記事は、以下の記事の続きです。 blog1.mammb.com モックメソッドからの戻り値のデフォルト設定(Since 1.7) モックメソッドからのデフォルトの戻り値を、モック定義時に Answer として指定することができます。組込で定義されている Answer を使用ることも Foo

    心地良すぎるモックライブラリ Mockito 〜その3〜 - A Memorandum
  • 心地良すぎるモックライブラリ Mockito 〜その2〜 - A Memorandum

    呼び出し順序の妥当性検証 余計なメソッド呼び出しが行われていないことを検証する Mockito のアノテーション 複数回のモックメソッド呼び出しの結果を変化させる コールバック付きの戻り値定義 voidメソッドの振舞を定義するdoXXファミリー 実オブジェクトの動作を変えるspy 記事は、以下の記事の続きです。 blog1.mammb.com 呼び出し順序の妥当性検証 以下のように、2つのモックがあり、それぞれのモックの add() メソッドの呼び出し順序を検証したい場合、 List firstMock = mock(List.class); List secondMock = mock(List.class); firstMock.add("was called first"); secondMock.add("was called second"); InOrder を使用します。

    心地良すぎるモックライブラリ Mockito 〜その2〜 - A Memorandum
  • Mockito 初めの一歩 - Qiita

    テストコードでは必須と言ってもいいくらいにお世話になっているモックライブラリ「Mockito」 最低限の使い方というか、実際よく使っているパターンを紹介します。 モックって? モックライブラリを使ったことがない方は、モックするという事自体に馴染みがないと思います。 例えば、テスト対象のクラスAが別のクラスBに依存している場合に、クラスAのテストコードなのにクラスBを初期化する処理を長々と書いたりするのは余計な手間です。もしクラスBがビジネスロジックなら目も当てられないテストコードが出来上がります。 モックライブラリでは、クラスBをクラスB自身の実装に依存しないmock(ハリボテ)として生成し、更にそのメソッドの戻り値を任意に設定するという事ができます。これにより「クラスBがこういう状態でこういう値を戻す場合のクラスAのテスト」が容易に書けます。 そしてそのモックライブラリの注目株が Moc

    Mockito 初めの一歩 - Qiita
  • Google Guice の散文的な検証 - kameidの備忘録 - Sharpen the Saw!

    Guice で、@ImplementedBy を使用してインジェクションしているときの 簡単な動作検証。 (親)Main → Service → Logic → Dao という親子関係で構築されているクラス群を作成した。以下ソースを子から順に。 まず、Dao。実装は、DaoImpl と DaoImpl2。 package test.dao; import com.google.inject.ImplementedBy; @ImplementedBy(DaoImpl.class) public interface Dao { public String getName(int key); } package test.dao; public class DaoImpl implements Dao { private DaoImpl() { System.out.println(this);

    Google Guice の散文的な検証 - kameidの備忘録 - Sharpen the Saw!
    yukung
    yukung 2013/10/29
    Guice の @ImplementedBy にまつわるTips。
  • Google GuiceのProviderによるInjection - ellectraの日記

    factory系で生成したオブジェクトをDIしましょうという機能らしい。 やり方は2通りで、Providerを実装するか、@Providesインスタンスで指定するか。 ただのhogeを返すProvider. public class SampleProvider implements Provider<String> { public String get() { return "hoge"; } }こちらは、上の"hoge"を返すプロバイダーを"sample"という名前付きでStringにbindする例と、@Providesを利用して、"Checkout"という名前付きでbindする例。 @Providesを利用した場合は、メソッドの戻り値のクラスにbindする。 public class SampleProviderModule extends AbstractModule { @Ov

    Google GuiceのProviderによるInjection - ellectraの日記
    yukung
    yukung 2013/10/29
    Guice の Provider にまつわるTips。
  • 心地良すぎるDependency Injectionライブラリ Guice - nodchipの日記

    etc9さんの"心地良すぎるモックライブラリ Mockito"がとても勉強になったので、似たような形式でGuiceの紹介をしてみます。 Dependency Injection きちんと勉強したわけではないので間違っていたらごめんなさい。Dependency Injection (DI)はユニットテストを書きやすくするためのクラスの書き方の一つです。クラスAが内部でクラスBを使うとき、Aの中でBをnewする代わりに、AのコンストラクタやsetterでBのインスタンスを外部から渡せるしておきます。こうしておくとAのユニットテストを書くとき、Bの動作を真似るモックオブジェクトを渡すことで、Bの中身を考えずにAをのテストを書けるようになります。これはAとBの動作を同時に考えてテストを書くよりずっと楽だと思います。依存性注入とかレポジトリパターンとも呼ばれているっぽいです。 GuiceはDIの補助

    心地良すぎるDependency Injectionライブラリ Guice - nodchipの日記
  • jMockを使ったテストの実行,あるいは実クラスのモックを作成してテストする方法 - 矢野勉のはてな日記

    Java, Cayenne, jMockjMockの使い方を,いまさらながら調べたのでメモ的に記録しておきます。 ORマッピング・フレームワークであるApache Cayenneでは,多くのORマッパと異なり,データオブジェクト(エンティティ)がインタフェースを使っていません。Cayenneはバイトコード・エンハンスとかを使用しない作りなので,継承関係を用いてデータオブジェクトの機能が提供されてます。で,このデータオブジェクトのテストを実行する際にモックを使いたいのだけど,インタフェースがないからどうしよう,という話がありました。 答えは簡単な話で,ほとんどのモック・ライブラリは実クラスのモック化をサポートしています。今回はjMockを使いました。easyMockでも同じようなことは可能でしょう。pom.xmlへのライブラリの追加次のライブラリをMavenのpom.xmlに追加します。 o

  • 心地良すぎるモックライブラリ Mockito 〜その1〜 - A Memorandum

    EasyMockとの違い Eclipse での利用に際して org.mockito.Mockito モックの利用と妥当性検証 スタブメソッドの定義 引数の照合 メソッド呼び出しの妥当性検証 voidメソッドから例外を返却 API的に EasyMock と大きな違いはありませんが、使用感としては格段に心地良い Mockito。 [:W150] 家 http://mockito.org/ のドキュメント(というかJavaDoc)をベースにメモ。 EasyMockとの違い Mockito では record モードと replay モードを切り替える必要がない Mockito で作成するモックは常に、EasyMock で言う NiceMock となる スタブメソッドの妥当性検証が常にオプション扱い 大きくは以上となります。具体的に、EasyMock では import static org.e

    心地良すぎるモックライブラリ Mockito 〜その1〜 - A Memorandum
  • 1