2010-05-31 82 views
7

我正在尝试编写单元测试的流,它有子流,其本身有另一个子流。单元测试嵌套子流(subflows subflows)

我注册第一个流程使用 FlowDefinitionResource getResource(FlowDefinitionResourceFactory resourceFactory)

然后我在过渡到它们之前在测试执行期间在FlowDefinitionRegistry中注册子流定义。

过渡到“第一级”子流程确定。转换为当前子流的子流的结果 - NoSuchFlowDefinitionException

问题是,子流程定义似乎都附加到测试的主流程,在另一个子流程中无法找到子流程。

是否有任何方法可以将子流定义附加到测试中的另一个子流,扩展为AbstractXmlFlowExecutionTests

+0

是否有人知道如何做到这一点?我非常想知道,因为我有同样的问题。 – 2010-10-20 01:32:39

回答

1

我认为这是可能的,但有点错综复杂,以得到正确的。

看看这个帖子:Testing a flow with subflow doesn't work。底线答案似乎是:重写configureFlowBuilderContext(MockFlowBuilderContext builderContext)虚拟方法并在那里注册你的模拟。

这个JIRA case for the Spring framework涉及到这个问题,也表明它是可能的但是令人费解。