The other day I was super busy at work; in meetings about a new product, while also working on a release. I was getting a lot of pressure to get the release out ASAP, and trying to test while also participating and taking notes in my meeting – yeah…not a fantastic idea. We had to pull others in to help test, other people that aren’t QA Engineers, and you know what testing was skipped? Integration testing.
The release got pushed to production, and it had a bug. Not like a no big deal bug, but a this is a horrible customer experience, we need to fix it asap and do a hot fix bug. All because we verified the new feature worked as it should on its own, and not how it worked with everything else around it. Honestly, it was a really stupid miss, and after that I had to put my foot down about being rushed and having to pull others in for help last minute, as that will just result in a decrease in quality.
Integration is normally what you do after your Functional Testing is completed, and it’s normally done in a STG or UA testing environment. Integration is where you test all of those pieces you tested in functional testing together – you are testing how they interact with each other, as well as other parts of the application. You want to test everything combined together.
So, if you were testing a login page your functional testing would cover the basic login, then your integration testing would cover what happens when you login, or get a failure. How does it all work together? When you log in are you taken to the right page with the right permissions? Are you able to logout successfully? If you don’t login successfully are you redirected to the correct place? Can you get a password reset when you ask for one, etc?