8.5. Integration Testing

Integration testing is where you wire up your solution to the real systems that it is interfacing with. These do not need to be production versions of those systems. They could be versions of those systems in your integration environment. Integration is often one of the harder tasks from a project perspective and will often flag issues resulting from incorrect assumptions made along the design and development process. Performing integration as early as possible usually makes life easier and helps to reduce project risk. Integration is where you get to validate the assumptions that you might have made about various systems that you interface with. Often, this is a manual process whereby changes to the solution are made to work as desired. (If changes to the solution are made, your functional tests should of course be updated to reflect those changes.)

For most scenarios, it is important to test with real system data rather than data believed to represent the production environment. However, there are scenarios in which getting real data for test purposes is challenging. During a large integration project that I worked on, we had tested the system using our test data. This particular project was a financial system that processed payment messages, so obtaining real messages from the production environment was difficult and presented security issues. Therefore, sanitized data was used that was thought to be similar to the production data. A few weeks before ...

Get Professional BizTalk® Server 2006 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.