← Back to Overview

9. Automation

QA Process

Automation testing helps improve testing efficiency, regression coverage, release confidence, and execution speed.

The goal of automation is not to replace manual testing completely, but to automate repetitive, stable, and high-value scenarios while keeping exploratory and visual testing manual where appropriate.

A. Test Automation

1. Identify Automation Candidates

Not every test case should be automated.

Automation candidates are selected based on:

  • Repetition frequency
  • Business criticality
  • Stability of the feature
  • Execution time savings
  • Regression importance

Common automation candidates include:

  • Login flows
  • Critical workflows
  • Regression scenarios
  • API validations
  • Smoke suites

Exploratory testing, rapidly changing UI, and visual validations may remain manual.

2. Write & Maintain Automated Test Scripts

Automated test scripts are written using maintainable coding practices.

This includes:

  • Modular architecture
  • Reusable functions
  • Stable selectors
  • Proper assertions
  • Readable naming conventions
  • Environment configurations

Automation scripts are updated whenever:

  • Features change
  • UI elements change
  • APIs are updated
  • Business logic changes

Poorly maintained automation creates flaky and unreliable test suites.

3. Integrate with CI/CD Pipeline

Automated tests are integrated into CI/CD workflows.

This ensures tests execute automatically:

  • On pull requests
  • During deployments
  • Before releases
  • During scheduled runs

CI/CD integration helps:

  • Detect regressions early
  • Prevent unstable builds from deploying
  • Improve release confidence

Failed automation should block deployments when critical functionality is affected.

4. Manage Test Flakiness

Flaky tests are investigated immediately.

Common causes include:

  • Timing issues
  • Unstable environments
  • Dynamic selectors
  • Shared test data
  • Asynchronous loading

Flaky tests reduce team trust in automation.

Maintaining automation stability is as important as creating automation coverage.

5. Automated Regression Suite

A stable regression suite is maintained for critical application workflows.

The suite typically covers:

  • Authentication
  • Core business workflows
  • API integrations
  • Data validations
  • Navigation flows

Regression suites are executed:

  • Before releases
  • After major deployments
  • During nightly runs

Automation significantly reduces repetitive manual effort during regression cycles.

6. API Automation

API automation is used to validate backend behaviour efficiently.

Testing includes:

  • Contract validation
  • Authentication testing
  • Schema validation
  • Response assertions
  • Performance checks
  • Negative scenarios

Tools commonly used include:

  • Postman/Newman
  • REST Assured
  • Playwright API testing
  • Cypress API requests

API automation helps identify backend issues faster than UI testing alone.

B. Tooling & Environment

1. Maintain Test Environments

QA collaborates with DevOps and developers to maintain stable testing environments.

Environment maintenance includes:

  • Deployment verification
  • Database resets
  • Service monitoring
  • Build updates
  • Environment health checks

Unstable environments can produce misleading test results and delay releases.

2. Test Data Management

Test data is maintained carefully to support different testing scenarios.

This includes:

  • Seed data creation
  • Edge-case datasets
  • Anonymised production snapshots
  • Role-based user accounts
  • Cleanup scripts

Proper data management improves repeatability and reduces testing blockers.

3. Bug Tracking Hygiene

Bug tracking systems such as Jira or Linear are maintained carefully.

This includes:

  • Updating statuses accurately
  • Avoiding duplicate tickets
  • Proper tagging and categorisation
  • Closing resolved defects
  • Maintaining traceability

Clean bug management improves reporting accuracy and team collaboration.

4. Postman Collection Maintenance

API collections are updated regularly whenever endpoints change.

Maintenance includes:

  • Updating request payloads
  • Updating authentication methods
  • Removing deprecated endpoints
  • Adding new scenarios

Well-maintained collections improve collaboration between QA and developers.

5. Browser & Device Matrix

A supported browser and device matrix is maintained for testing coverage.

The matrix typically includes:

  • Browser versions
  • Operating systems
  • Device types
  • Screen resolutions
  • Mobile platforms

This ensures testing remains aligned with actual user usage patterns.