6.3. Summary

This chapter looked at the different types of testing and where they can be performed. We've also looked at some of the other activities that can be performed in the production environments and their considerations.

The following are the key points to take away from this chapter:

  • Acceptance testing covers two primary areas of testing:

    • User acceptance testing (UAT), which focuses on the functional aspects of the system.

    • Operational acceptance testing (OAT), which focuses on the operational aspects of the system.

Where possible, acceptance testing should be performed in a live-like environment.

  • OAT includes a variety of different test scenarios, including:

    • Monitoring procedures

    • Operational procedures

    • Recovery procedures

    • Maintenance procedures

    • User training

  • Technical testing includes a variety of test scenarios, including:

    • Atomic assembly tests

    • Load tests

    • Soak tests

    • Stress tests

    • Third-party integration tests

    • Acceptance tests

  • Functional testing focuses on the functional aspects of the system. Functional testing can be performed in a local environment prior to entering formal UAT activities.

  • Regression testing focuses on automatically testing the system. Where possible, the regression suite should cover as much as possible and execute on a number of servers to reduce the end-to-end time. The build outputs should include the following information:

    • Unit tests executed and code coverage achieved

    • Assembly tests executed and code coverage achieved

    • Smoke tests executed and code coverage achieved ...

Get Design – Build – Run: Applied Practices and Principles for Production-Ready Software Development now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.