Java JUnit将操作添加到现有操作

Java JUnit将操作添加到现有操作,java,junit,jmock,Java,Junit,Jmock,我有一个默认操作,我希望在调用方法时始终调用该操作,如下所示: @Before public void setUp() throws Exception { context = new JUnit4Mockery() {{ setThreadingPolicy(new Synchroniser()); }}; context.checking(new Expectations() {{ allowing(mockDispatcher).d

我有一个默认操作,我希望在调用方法时始终调用该操作,如下所示:

@Before
public void setUp() throws Exception {
    context = new JUnit4Mockery() {{
        setThreadingPolicy(new Synchroniser());
     }};
    context.checking(new Expectations() {{
        allowing(mockDispatcher).dispatch(with(any(EntityBase.class)));
        will(doAll(dispatchAction));
    }});
}
然后我想在一个测试中添加一个操作:

@Test
public void getEventMessages_Test() throws Exception {
    allowing(mockDispatcher).dispatch(with(any(EntityBase.class)));
    will(doAll(otherAction));
}
但只有第一个动作被调用。如果我从设置中删除期望,则调用otherAction。
我如何才能做到这两个动作都被调用?

你能提供更多的信息吗?我很难理解你的问题。您需要调用context.assertessatified()来实际检查您的期望值。问题是,如果我在设置中允许,那么在调用dispatch方法时永远不会调用otherAction。只有派遣行动。如果我注释掉了allowing…will(doAll(dispatchAction))otherAction,那么我不知道这是否是一个bug,当然,我不知道在同一方法调用上定义了一个操作之后如何添加新操作。