Service Documentation

Maintenance Testing

Testing changes made to operational software after release, ensuring modifications, migrations, and retirements maintain system quality and reliability.

60%
Software lifecycle cost
4
Testing types
3
Main triggers
100%
Impact analyzed
01

What is Maintenance Testing?

Once deployed, a software system often needs to be modified, migrated, or retired. Modifications include planned enhancement changes (releases), corrective and emergency changes, and changes to the environment (operating system or database upgrades), patches for newly exposed vulnerabilities, and patches for defects. Maintenance testing for migration includes operational testing of the new environment as well as of the changed software, and tests of data conversion. Maintenance testing for retirement includes the testing of data migration or archiving, if long data-retention periods are required, and restoration and retrieval procedures after archiving.

Source: ISTQB Foundation Syllabus
02

Maintenance Testing Types

Type Description Example
Corrective Maintenance
Testing changes made to fix defects in operational software. Includes both planned fixes and emergency hot-fixes for production issues. Bug fixes, patches
Adaptive Maintenance
Testing software modifications to adapt to environmental changes such as OS upgrades, database migrations, or third-party API changes. Platform updates
Perfective Maintenance
Testing planned enhancements and new features added to operational software based on user feedback or changing business requirements. Feature releases
Preventive Maintenance
Testing changes made to improve software maintainability, reduce technical debt, and prevent future defects through refactoring. Code refactoring
03

Maintenance Testing Process

1

Trigger Identification

Identify the trigger for maintenance testing: modification (planned or unplanned), migration (to new environment), or retirement (archival and data migration).

2

Impact Analysis

Analyze the scope of changes to determine what parts of the system are affected. This drives test planning and determines the extent of regression testing needed.

3

Regression Test Selection

Select appropriate regression tests based on impact analysis. Consider both automated test suites and manual test cases covering affected functionality.

4

New Test Design

Design new tests for modified functionality, new features, or changed integrations. Ensure test coverage for all identified risks.

5

Test Execution & Validation

Execute selected regression tests and new tests. Validate that changes work as intended and have not introduced unintended side effects.

04

Benefits of Maintenance Testing

Risk Mitigation

Systematic testing of production changes reduces the risk of introducing defects into operational software, protecting business continuity and user satisfaction.

  • Prevent regression defects
  • Validate environmental changes
  • Ensure data integrity during migration
  • Reduce emergency hot-fixes

Lifecycle Management

Structured maintenance testing supports the entire software lifecycle from initial release through retirement, ensuring quality at every stage.

  • Support continuous delivery
  • Enable safe platform upgrades
  • Facilitate legacy system retirement
  • Maintain audit compliance

Need Maintenance Testing?

Our ISTQB-certified engineers provide comprehensive maintenance testing services for production software, ensuring safe deployments and seamless migrations.

Last updated: August 28, 2025 Originally published: December 12, 2022