我正在尝试使用 JMock 编写一些测试,并将添加以下代码:
db = context.mock(DBResultQueryExecutor.class);
context.checking(new Expectations() {{
oneOf (db).prepareQuery(query);
will(throwException(new QueryException("Test")));
}});
现在,我DBResultQueryExecutor
的定义如下:
public interface DBResultQueryExecutor{
...
void executeQuery() throws QueryException; //This is a checked exception
... }
在 JMock 中,我只是试图指定该方法将在将来的某个时间点被调用一次。这很好,除了 Eclipse 在期望设置中抱怨未处理的异常。我知道它稍后会被抛出,并且我没有在预期范围内检查它。
我在这里做错了什么还是有一种简单的补救措施来解决这种情况?谢谢。