I’m trying to get a pulse on how other people do testing with a service oriented architecture. The part that I’m interested in is how are people currently testing the interactions between systems and what have been some pain points in the method that you chose.
For example, on a project I am working on the decision was made to require the different components to be running in order to run some of the tests that ensure that they are working together. This is nice because you are actually testing that the two work together but it makes running the tests a lot slower and cumbersome because you have to ensure the different pieces are up and running. Other ways that i’ve seen testing done is to create mock services that can be swapped out in the test environments to emulate what the remote service would do. This seems like a good way to keep the different components separate but seems to add extra overhead to make sure the interfaces are all in-sync and maintaining both the mocked version and the live version can sometimes lead to logical inconsistencies between the two.