|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.
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
Related Q&A from Mike Kelly
There are multiple ways performance testing can be handled on an Agile team. An expert describes the benefits of various approaches. Continue Reading
Every software tool is individually designed to meet various needs and requirements of projects, teams and project managers. Learn what tools experts... Continue Reading
Creating user acceptance tests out of basic software requirements documents can be a daunting task. Expert Mike Kelly points out logical approaches ... Continue Reading