Production testing is black box testing on production in order to find defects and bugs before they become problems.
Clone this repo and document your production testing strategy here:
Content
Production testing is used to:
- identify defects before they become problems
- verify resilience under stress
- create temporary workarounds for defects that are not yet fixed
Production testing is not Testing-in-Production (TiP) which is part of the acceptance testing.
Production testing is also not monitoring, it is actively provoking the production system into a response.
-
Setup monitoring first
-
Have a disaster recovery procedure in place
-
Have a rollback or backup strategy in place
-
Beware not to expose vulnerabilities to the public
-
Avoid degrading user experience
-
Experiment with chaos engineering
-
Test experiments before running them in production
Chaos Engineering is the discipline of experimenting on a system in order to build confidence in the system’s capability to withstand turbulent conditions in production.
- Focus on the measurable output of a system
- Vary Real-world Events
- Prioritize events either by potential impact or estimated frequency
- Run Experiments in Production
- Automate Experiments to Run Continuously
- Minimize Blast Radius
Steps:
- Hypothesize
- Plan
- Execute
- Interpret
- Improve
See: