liveBook · Manning

Integration test

As explained in Think Like a Software Engineering Manager

Integration testing evaluates whether combined software modules or components interact correctly as a group.

During implementation, a module can work on its own while its interactions with other modules still need checking. An integration test combines software modules or components and tests them as a group to see whether they work together to meet system requirements. section 10.1.4 section 12.2.2

Choose the test by the scope of the question:

  • Does one small unit, such as a function or method, work? Use a unit test. section 12.2.2
  • Do combined components interact correctly? Use an integration test. section 12.2.2
  • Does the entire application behave as expected in a production-like scenario? Use an end-to-end test. section 12.2.2
The test automation pyramid helps the engineering team produce high-quality software. It works at three levels: unit testing (base step), integration testing (middle step)m and end-to-end testing (top).
sidebar figure

The test automation pyramid places integration testing between unit testing and end-to-end testing. section 12.2.2

Track test coverage to spot gaps during development, but do not treat coverage as a guarantee that the code is bug-free. When reviewing a change, ask which component interactions its integration tests check. section 12.2.2 section 10.1.4

How Think Like a Software Engineering Manager covers it

How deep it goes
Defines group testing and its purpose, but does not give steps for writing an integration test.
Examples
Uses combined software modules as the testing case and a test automation pyramid to show its scope.
What it assumes
Assumes basic familiarity with software components and requirements while defining integration testing in plain terms.
What you can do after
Evaluate/understand whether tests check component interactions rather than only individual units or the whole application.
How it connects
Contrasts integration testing with unit testing and end-to-end testing, and relates it to test coverage.

Also explained in

Compare how 31 books explain integration test →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Think Like a Software Engineering Manager. The section links point to the parts of the book it draws on.