簡體   English   中英

生成填充了任意值的模擬對象

[英]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也...

MockitoRETURNS_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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM