我使用mockito为junit。我在创建对象模拟时有疑问。 我有一个名为DBConnect的类。我需要数据库属性,如dbname,凭据等。 PatientDetails使用此类。现在我正在为PatientDetails写junit。所以我使用以下代码。
@RunWith(MockitoJUnitRunner.class)
public class PatientDetailsTest {
@Mock
DBConnect dbConnect
@Before
public void setUp()
{
PatientDetails testClass = new PatientDetails();
testClass.setDBConnect(dbConnect);
}
}
我无法得到正确的结果。
答案 0 :(得分:0)
你的代码对我来说似乎很好。我稍微扩展它以包括测试,以便它可以运行。这很好用:
@RunWith(MockitoJUnitRunner.class)
public class PatientDetailsTest {
@Mock
DBConnect dbConnect;
@Before
public void setUp() {
when(dbConnect.sayHello()).thenReturn("works for me");
PatientDetails testClass = new PatientDetails();
testClass.setDBConnect(dbConnect);
}
@Test
public void testname() throws Exception {
System.out.println("foo");
}
private static interface DBConnect {
String sayHello();
}
private static class PatientDetails {
public void setDBConnect(DBConnect dbConnect) {
System.out.println(dbConnect.sayHello());
}
}
}
输出:
works for me foo