Integration testing
Where unit testing helps with ensuring correct behavior is exhibited by the individual classes; integration testing focuses on the interaction between the different components of a system. The larger the system is, the more importance this form of testing takes on. The following two sections offer techniques to create effective integration strategies.
Continuous delivery
Continuous delivery is a software engineering practice that advocates the production of software in short cycles that can be reliably released. Traditionally, once changes are committed to the code base, a server builds the software and runs the full test suite. If successful, the software can be deployed automatically to a staging environment. Integration tests can then be executed against the new version of the software.
With Maven, we can define a simple means to separate unit tests from integration tests by their naming conventions; integration tests should have the suffix, IntegrationTest
. The following...