Tuesday 3 June 2014

Integration testing



Integration testing examines all the components and modules that are new, changed, affected by a change, or needed to form a complete system. Where system testing tries to minimize outside factors, integration testing requires involvement of other systems and interfaces with other applications, including those owned by an outside vendor, external partners, or the customer. For example, integration testing for a new web interface that collects user input for addition to a database must include the database’s ETL application even if the database is hosted by a vendor—the complete system must be tested end-to-end. In this example, integration testing doesn’t stop with the database load; test reads must verify that it was correctly loaded.

Integration testing also differs from system testing in that when a defect is discovered, not all previously executed tests have to be rerun after the repair is made. Only those tests with a connection to the defect must be rerun, but retesting must start at the point of repair if it is before the point of failure. For example, the retest of a failed FTP process may use an existing data file instead of recreating it if up to that point everything else was OK.

Sample Entry and Exit Criteria for Integration Testing

 Entry Criteria

  • System testing has been completed and signed off
  • Outstanding issues and defects have been identified and documented
  • Test scripts and schedule are ready
  • The integration testing environment is established

Exit Criteria

  • All systems involved passed integration testing and meet agreed upon functionality and performance requirements
  • Outstanding defects have been identified, documented, and presented to the business sponsor
  • Stress, performance, and load tests have been satisfactorily conducted
  • The implementation plan is final draft stage
  • A testing transition meeting has been held and everyone has signed off

Integration testing has a number of sub-types of tests that may or may not be used, depending on the application being tested or expected usage patterns.

No comments:

Post a Comment