An approach to integration testing

Integration testing can be thought of as the measurement of disagreements among parts of a system. Expert Mike Kelly explains how this approach to integration testing can be used.

I'm working as an IT engineer and I have a software integration testing question. I have very low-level requirements which match directly to a function or some statements of function -- that is, a group of requirements matches to one function. I want to do software integration testing for the above requirements. Can you please suggest to me how integration testing is possible? I want to know the testing approach.
One of the fundamental ideas for integration testing is the idea of disagreement between various parts of the system.

John Overbaugh answered a very similar question to this one, "How to do integration testing." His is a bit more general, but he addresses the key issue right up front -- "integration testing means completely different things to completely different companies." I might even extend that to say that I've found it to mean different things to people within the same company and sometimes on the same team. Without knowing the specifics of your situation and what you mean when you say integration testing, it's difficult to give you an answer at the level of detail you might be expecting.

When talking about your question with Dale Emery, Dale pointed out that for him, one of the fundamental ideas for integration testing is the idea of disagreement between various parts of the system. That is, if we believe part X does its specific function well (hopefully based on some level of unit testing) and part Y does its specific function well, then when we put them together and test we're looking for ways in which there is conflict or unintended consequences between the two. The less certain we are about the different parts we'll be testing, or the lower our confidence in how those two parts will interact, the more integration testing we might want to do.

Software testing help:
Functional testing: Unit testing, integration testing and beyond

User acceptance testing vs. system integration testing

Unit, integration testing first steps toward SOA quality

In your specific case, what that might mean is that you need to do some level of unit testing for the functions involved based on your low-level requirements. Once that's completed, look at the requirements that span functions and require some level of integration testing. Anticipate how you'd exercise the software to get the behavior you'd need to see to test those requirements. Once you've looked at all the requirements, think about what "disagreements" or conflicts there might be between the functions involved and test for those conflicts.

Dig Deeper on Topics Archive