Types of Acceptance Testing

Profile picture for user devraj

Common forms of acceptance testing are:

1. User Acceptance Testing

User acceptance testing of the system is typically focused on validating the fitness for the use of the system by intended users in a real or simulated operational environment. The main objective is to build confidence that the users can use the system to meet their needs, fulfill requirements, and perform business processes with minimum difficulty, cost, and risk.

2. Operational acceptance testing

The acceptance testing of the system by operations or systems administration staff is usually performed in a (simulated) production environment. The main objective of operational acceptance testing is to build confidence that the operators or system administrators can keep the system working properly for the users in the operational environment, even under exceptional or difficult conditions. The tests focus on operational aspects, and may include:

  • Testing of backup and restore
  • Installing, uninstalling, and upgrading
  • Disaster recovery
  • User management
  • Maintenance tasks
  • Data load and migration tasks
  • Checks for security vulnerabilities
  • Performance testing

3. Contractual and Regulatory Acceptance Testing

Contractual acceptance testing is performed against a contract’s acceptance criteria for producing custom-developed software. Acceptance criteria should be defined when the parties agree to the contract. Contractual acceptance testing is often performed by users or by independent testers.

Regulatory acceptance testing is performed against any regulations that must be adhered to, such as government, legal, or safety regulations. Regulatory acceptance testing is often performed by users or independent testers, sometimes with the results witnessed or audited by regulatory agencies. The main objective of contractual and regulatory acceptance testing is to build confidence that contractual or regulatory compliance has been achieved.

4. Alpha and Beta Testing

Alpha and beta testing are typically used by developers of commercial off-the-shelf (COTS) software who want to get feedback from potential or existing users, customers, and/or operators before the software product is put on the market. Alpha testing is performed at the developing organization’s site, not by the development team, but by potential or existing customers and/or operators or an independent test team.

Beta testing is performed by potential or existing customers, and/or operators at their own locations. Beta testing may come after alpha testing, or may occur without any preceding alpha testing having occurred. One objective of alpha and beta testing is building confidence among potential or existing customers, and/or operators that they can use the system under normal, everyday conditions and in the operational environment(s) to achieve their objectives with minimum difficulty, cost, and risk. Another objective may be detecting defects related to the conditions and environment(s) in which the system will be used, especially when those conditions and environment(s) are difficult to replicate by the development team.