私はEJBのテストにMockitoを使いたいと思います。 get()
メソッドはデータベースクエリの結果を返し、transformedGet()
はセッションBeanのビジネスロジックを実行します。Mockedメソッドは、期待値ではなくnullを返します。
mockFoo.get()
が直接呼び出された場合、正常に動作します。 しかし、mockFoo.transformedGet()
がget()
メソッドを呼び出すと、期待値ではなくヌルを返します。
私はビジネスロジックをテストし、データベースクエリを分離したいと思います。 Mockitoでこれを行うことは可能ですか?テストへ
クラス:
public class Foo {
public String get() {
return "get";
}
public String transformedGet() {
return "transformed" + get();
}
}
テスト:
@Test
public void mockitoTest() {
Foo mockFoo = Mockito.mock(Foo.class);
String expected = "test";
Mockito.when(mockFoo.get()).thenReturn(expected);
String actual = mockFoo.get();
Assert.assertEquals(actual, expected);
String transformed = mockFoo.transformedGet();
Assert.assertEquals(transformed, "transformed" + expected);
}