Testing in Production

Testing in production refers to the process of testing new features, bug fixes, and updates in the live environment where the end-users operate. This approach complements pre-release testing by exposing new changes to real-world conditions.

Goal

The goal of testing in production is to ensure that new changes perform as expected under live conditions, ensuring that your testing effort is based on real-world scenarios and user interactions.

Context

Tests are traditionally performed in different environments such as development, staging, and pre-production. However, these environments may not fully replicate the real-world conditions, data and user interactions. In addition, we do not want to block the release process by having a long testing phase. Testing in production lets us achieve both aims.

Inputs

ArtifactDescription
Live ProductThe code changes deployed to the production environment.
Feature TogglesWe use feature toggles to control the visibility of new features in the live environment to enable the testing of new features in production without exposing them to all users.

Outputs

ArtifactDescriptionBenefits
Defects LogA compilation of defects, usability issues, and observations made during exploratory testing.Provides immediate feedback and insights into application quality.

Anti-patterns

  • Skipping Pre-production Testing: Relying solely on testing in production without adequate pre-release validation can lead to critical issues affecting all users.
  • Poor Monitoring Setup: Without comprehensive monitoring, identifying and diagnosing issues becomes challenging, potentially leading to prolonged user exposure to bugs.
  • Exposing features to end users: Deploying new features to all users without proper testing can lead to a poor user experience and potential business impact.

Was this page helpful?

Previous
Dark Launching
© ZeroBlockers, 2024. All rights reserved.