[英]Generating a mock object filled with arbitrary values
我是java的新手,必須測試類。
我需要一個非常復雜的類的模擬對象,其中一些屬性是對象,而對象又有其他對象,所以對我來說手動生成一個模擬對象需要做很多工作。
我想知道是否有一種方法可以自動生成該模擬對象,但不僅如此,如果可以使用某些任意值自動填充該對象的所有屬性。
請問有人可以幫助我嗎?
我打算在這里舉一個例子,以確保我清楚自己......
class A {
int a;
B b;
C c;
}
class B {
int x;
C k;
}
class C {
String x;
int x;
}
我想模仿A類的一個對象。
我希望mockA對象具有所有可能字段的值,例如來自B類的x String也...
Mockito和RETURNS_DEEP_STUBS選項可能正是您要找的。 更重要的是,mockito似乎經常默認返回合理的值。
鏈接文檔中的示例用法,以供快速參考:
Foo mock = mock(Foo.class, RETURNS_DEEP_STUBS);
// note that we're stubbing a chain of methods here: getBar().getName()
when(mock.getBar().getName()).thenReturn("deep");
// note that we're chaining method calls: getBar().getName()
assertEquals("deep", mock.getBar().getName());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.