Test Cycle: Summary of Tests

This section summarizes a complete test cycle, with tests that target specific issues, including old and new functionality, performance under multi-user loads, integration, and user acceptance.

Stage

Purpose

Best Technique

Functional testing

For each application or process, addresses the following questions:

  • Are there any obvious bugs?

  • Do transactions return the same results?

  • Will the application break anywhere?

    If you decide to use new functionality:

  • Does the release provide the functionality it markets?

  • What are the limitations of the new features of this release?

Single-user:

  • Ad hoc test

  • Manual test scripts and cases

  • Existing application test suites

Stress testing (benchmarking)

Using very heavy loads, addresses the following questions:

  • Are there any bugs related to multi-user loads?

  • Is the performance of critical transactions as good or better?

  • Is the new release stable under load?

Multiuser:

  • Keystroke capture

  • Transaction generator

  • Production load capture

Integration testing

Ensure that all system components work well together, such as:

  • Batch processing

  • Online transaction processing (OLTP)

  • Decision Support Systems (DSS) and ad hoc queries

  • Operations, including backup, recovery, and dbcc commands

  • Sybase products other than ASE

  • Third party products

Test suite models all system components

End-user acceptance testing

Execute acceptance tests specific to the environment. Also cover functions not prioritized into earlier stages.

NoteThe other stages, done well, should have caught most of the problems.

Standard acceptance tests

Final migration plan testing

  • Ensure that you are fully prepared by walking through the upgrade/migration plan.

  • Verify that fallback procedures work.

  • Identify and test the contingencies.

Walk through every upgrade step, including fallback strategies