比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。

...

作成された testGetItemDB() を確認します。(テストメソッド名は連番で付けられるため本チュートリアルの実施順によって異なります。)

@Test

public void testGetItemDB() throws Exception {

テストメソッド
// Given
Cart underTest = new Cart();テストインスタンスの生成
// When
Connection con = mockConnection();getItemDBメソッドのConnection引数のモックオブジェクト呼び出し
String itemId = ""; // UTA: デフォルト値getItemDBメソッドのString引数
Item result = underTest.getItemDB(con, itemId);getItemDB メソッドの呼び出し


// Then

getItemDB の戻り値のチェック用アサーションテンプレート
// assertNotNull(result);
}

テンプレート作成時に getItemDB(Connection, String) メソッドの引数となるString オブジェクトにはデフォルト値 “” が格納されます。
同じく引数のConnection オブジェクトは同一テストクラス内に生成された Connection のモックを生成・設定するためのヘルパーメソッド mockConnection() の戻り値が格納されます。

...

作成された mockConnection() を確認します。(一部改行を入れています。)

private static Connection mockConnection()

throws Throwable {
ヘルパーメソッド
Connection con = mock(Connection.class);Connection のモックオブジェクト生成

Statement createStatementResult = mockStatement();

Statement のモックヘルパーメソッド呼び出し …①

when(con.createStatement()).

thenReturn(createStatementResult);
Connection#createStatement メソッドの戻り値を設定 …②
return con;Connectionを返却
}

テスト対象の getItemDB(Concection, String) メソッドの内部で Connection オブジェクトは Connection#createStatement メソッドで Statement オブジェクトの生成をします。
mockConnection() ヘルパーメソッドではテストケースの実行時に Connection#createStatement メソッドの戻り値が任意の値を戻すためのコードが自動生成されます。(上記②)
なお、Connection#createStatement メソッドの戻り値となる Statement はテストケースの生成で同時に生成された mockStatement() メソッドでモック化されています。(上記①)

...

3.testGetItemDB() メソッドに以下のアサーションが追加されたことを確認します。

// Then - メソッド getItemDB(Connection, String) の結果 のアサーション

assertNotNull(result);

assertEquals("", result.getName());

assertEquals("", result.getId());

assertEquals(0, result.getPrice());

assertEquals(0, result.getCount());

4.変更後の testGetItemDB() メソッドを から実行します。

...