nic*_*man 7 java unit-testing mockito
我是java的新手,必须测试类.
我需要一个非常复杂的类的模拟对象,其中一些属性是对象,而对象又有其他对象,所以对我来说手动生成一个模拟对象需要做很多工作.
我想知道是否有一种方法可以自动生成该模拟对象,但不仅如此,如果可以使用某些任意值自动填充该对象的所有属性.
请问有人可以帮助我吗?
我打算在这里举一个例子,以确保我清楚自己......
class A {
int a;
B b;
C c;
}
class B {
int x;
C k;
}
class C {
String x;
int x;
}
Run Code Online (Sandbox Code Playgroud)
我想模仿A类的一个对象.
我希望mockA对象具有所有可能字段的值,例如来自B类的x String也...
Mar*_*Łoś 13
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());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7678 次 |
| 最近记录: |