End to end test across multi Spring Boot applications
<p>Currently in our project, we are using Spring Integration to integrate many service and some protocol related endpoints.</p>

<p>The project is a multi Spring Boot applications, more than one executable jars will be deployed in production.</p>

<p>The question is:</p>

<ol>
<li><p>How to run an end to end test which needs to run cross some of these applications, I have to run the one by one manually? In before none-Spring-Boot applications, I can use Maven tomcat7 plugin to complete this work(deploy the wars into an embedded tomcat and run it in <strong>pre-integration-test</strong> phase), now how to start up all related applications before I run my test. Assume I do not use Docker/Vagrant now.</p>

<p>Similar question found on stackoverflow, <a href="https://stackoverflow.com/questions/33873548/end-to-end-integration-test-for-multiple-spring-boot-applications-under-maven">End to end integration test for multiple spring boot applications under Maven</a></p>

<p>How to run the end2end test automatically?</p></li>
<li><p>In an Spring Integration test, sometime I have to mock a http endpoint, so I wrote a simple <code>Controller</code> in test package to archive this purpose, but I want to run it at a different port, which make it more like an outside resource.  How to run different <code>@SpringBootApplicaiton</code> classes at varied ports at the same time in the test for this purpose?</p></li>
</ol>

<p>I am using the latest Maven, Java 8, Spring Boot 1.3.1.RELEASE.</p>