単体テストアシスタントで作成するテストメソッドはテストの実行に必要となるテストデータに型の初期値を設定するため、オブジェクト型の場合は null が設定されます。
ファクトリメソッドを使用するとオブジェクトの初期化コードをテストメソッドテンプレートに入れることができます。
1. 前提確認
ファクトリメソッドを利用しない場合、オブジェクト型のテストデータは null で初期化されます。
Cart#addItem メソッドのテストメソッドを で作成した場合(テストメソッド名は連番で付けられるため本チュートリアルの実施順によって異なります。)
@Test public void testAddItem() throws Throwable { | |
// Given Cart underTest = new Cart(); | |
// When Item item = null; // UTA: デフォルト値 | オブジェクト型がnull で初期化される |
underTest.addItem(item); } |
テストメソッドで使用するオブジェクトのファクトリメソッドを事前に登録しておくことで null 以外のデータを渡すことが可能です。
2.