Skip to main content

Automated Testing

โ“What is it

  • An automated test is written in code so a computer can execute it. It might test the validity of a single piece of one system, or of several systems working together. Automated tests are written using specialized tools that simulate program or user behaviour.

๐Ÿ”‘ Key Benefits / Why is this important

  • Unlike manual testing, automated tests can be run quickly and frequently, which is crucial for DevOps environments. In a CI/CD pipeline, code changes are automatically tested before they are merged with the main body of work or promoted to a live environment.
  • As the codebase evolves, automated tests act as a safety net, allowing developers to verify that new code changes haven't broken existing functionality.
  • Tests can be used to ensure consistent behaviour as well as to validate some non-functional requirements. Some testing tools can simulate thousands of users interacting with a system at once, stressing it to prove there is no performance degradation.

๐Ÿ›  Techniques supporting this practice

  • Unit Testing
  • System Testing
  • TDD
  • Stress Testing
  • Failover Testing
  • Chaos Engineering