我使用TestNG和jMock进行单元测试,但是我对TestNG有一个问题。当我期望调用模拟对象方法时,它将测试标记为已通过,但事实并非如此!
public class SomeTestTest {
Mockery mocker = new Mockery();
SomeInterface someInterface = mocker.mock(SomeInterface.class);
@Test
public void testName() throws Exception {
mocker.checking(new Expectations() {{
oneOf(someInterface).someMethod();
}});
}
}这是我得到的报告
Custom suite
Total tests run: 1, Failures: 0, Skips: 0发布于 2012-10-08 15:30:46
你错过了一个给Mockery.assertIsSatisfied()的电话。
当您期望所有期望得到满足时,该调用会告诉jMock。否则,它不会知道您希望在代码中的哪一点验证这些内容。
Getting Started article中也解释了这一点。
https://stackoverflow.com/questions/12777095
复制相似问题