Automated integration testing with Talend ESB

Employee

Automated integration testing with Talend ESB

What are the options regarding automated integration testing solutions (such as JUnit) for ESB? I understand that Talend Unit Jobs (TUJs) potentially provides a solution for data services but what about RouteBuilder routes and 3rd party solutions such as JUnit?
Thanks,
Darren
Employee

Re: Automated integration testing with Talend ESB

This question is not so easy to answer as it depends how your ESB is deployed and what kind of funtionality you want to test. Do you talk about a distributed ESB where service consumer and service provider are enriched with ESB libraries or about a centralized ESB where service consumer and provider are untouched (non-intrusive integration) and the ESB is the centralized component which implements some of the EIP.
If the former, the challenge in testing is that I want to test my functionality end-to-end with a real service consumer which might create a socket to a service provider. This should be part of the continous integration system without manual deployment of service consumer and providers.
In this case, we talk about web services testing. I use the following helper classes shipped with CXF:
http://svn.apache.org/viewvc/cxf/trunk/testutils/src/main/java/org/apache/cxf/testutil/common/
This allows to write a single JUnit Test class which instantiates Server and Client with independent spring configuration in one JVM. Client and server communicate over a socket. Further, you can also launch third party servers. This spring configuration can contain Camel routes also.
If we talk about business testing of your service provider soapUI might be sufficient for manual testing. There is also a maven plugin for soapUI thus you can run your tests within the continous integration system like Jenkins, Anthill, ...
HTH
Oli