Java 通过mockito设置值不起作用

Java 通过mockito设置值不起作用,java,unit-testing,mockito,Java,Unit Testing,Mockito,考虑以下类别: public class FacadeImplTest { /*Class to test*/ private FacadeImpl facade; @Mock private Test test; @Mock private Test1 test1; @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); facade = new FacadeImp

考虑以下类别:

public class FacadeImplTest {
/*Class to test*/
private FacadeImpl facade;
@Mock
private Test test;
@Mock
private Test1 test1;
 @Before
public void setUp() throws Exception {

    MockitoAnnotations.initMocks(this);
    facade = new FacadeImpl();

    test.setID("1234");


}
@Test
public void testOrder() throws Exception {
// Have methods to test
}
这里的
Test
类是一个pojo类,它有id变量的getter和setter。
test.setID(“1234”)
应该在
test
类中设置id,但它不会设置并返回null。我是不是遗漏了什么


但是当我尝试实例化
Test
类,然后设置值时,它工作正常

是的,您需要模拟get值返回时发生的情况:

当(test.get(“1234”))。然后返回(“1234”)


在mock上调用set没有任何作用。mock没有包含任何字段的概念,它只知道调用什么和返回什么,即需要为特定输入指定特定的返回值。

如果使用实例化而不是mock,那么为什么不这样做呢?你不必使用mocks。我们必须在我们的项目中使用mockito。。所以我想知道我做错了什么。