뮬 프로젝트에 테스트 사례를 작성하기 시작했습니다.뮬의 서브 플로우 테스트
본인의 주요 플로우에 대한 기능 테스트 케이스를 다음과 같이 작성했습니다.
public void testMainFlow_1() throws Exception{
MuleClient client = muleContext.getClient();
MuleMessage result = client.send(helloServiceAddress, fileAsString("SamplePayloads/input_Request.xml"), properties);
assertNotNull("Null Result", result);
assertEquals(result.getPayloadAsString(), fileAsString("SampleResponses/sampleResponse.xml"));
}
그러나 어떻게 하위 흐름을 테스트 할 수 있습니까? 엔드 포인트가 없습니다. 어떻게 페이로드를 전달하고 테스트 할 수 있습니까?
다음은 내 흐름 구성입니다. 그것이 간단한되어야 FunctionalTestCase
사용
@Test
public void invokeSubFlow() throws Exception {
MessageProcessor mp = (MessageProcessor) muleContext.getRegistry()
.lookupObject("subflow_2");
FlowConstruct parentFlow = muleContext.getRegistry().lookupFlowConstruct("main_flow");
((FlowConstructAware) mp).setFlowConstruct(muleContext.getRegistry()
.lookupFlowConstruct("subflow_2"));
Lifecycle lc = (Lifecycle) mp;
lc.initialise();
lc.start();
MuleMessage muleMessage = new DefaultMuleMessage("test", muleContext);
MuleEvent event = new DefaultMuleEvent(muleMessage,
MessageExchangePattern.REQUEST_RESPONSE,
new DefaultMuleSession(parentFlow,muleContext));
mp.process(event);
}
하위 흐름에 대한 래퍼 흐름을 만들려고했습니다. 그것은 해결 방법입니다. 그러나 서브 플로우 직접 테스트를 지원하는 Mule에 뭔가가 있다면 시도하고 싶습니다. – user1760178
그런 다음 작성한 JIRA 티켓을 upvote/follow를 따르십시오. –
완료. 고맙습니다. – user1760178