7

我正在尝试为具有子流的流编写单元测试,该流本身具有另一个子流。

我使用 FlowDefinitionResource getResource(FlowDefinitionResourceFactory resourceFactory).

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

过渡到“第一级”子流程没问题。转换到当前子流的子流的结果 - NoSuchFlowDefinitionException

问题是子流定义似乎都附加到测试的主要流中,并且在另一个子流中找不到子流。

有没有办法将子流定义附加到测试中的另一个子流,扩展AbstractXmlFlowExecutionTests

4

2 回答 2

1

我认为这是可能的,但有点令人费解。

看看这个线程:Testing a flow with subflow doesn't work。底线答案似乎是:覆盖 configureFlowBuilderContext(MockFlowBuilderContext builderContext) 虚拟方法并在其中注册您的模拟。

这个Spring 框架的 JIRA 案例涉及到这个问题,并表明它是可能的,但令人费解。

于 2010-11-08T20:02:11.197 回答
1

您应该单独测试每个流程。所以第一次测试顶部流并模拟第一个子流,然后只测试第一个子流并模拟第二个,依此类推......

http://static.springsource.org/spring-webflow/docs/2.3.x/reference/html/ch15s07.html

于 2012-10-04T12:44:53.957 回答