Dividing inputs into groups expected to behave similarly.

Defect reaching a later environment or users.

Process for determining the underlying cause of a problem.

Testing values near input boundaries.

Checking whether software meets specified requirements.

Testing web applications across different browsers.

Environment in which tests are performed.

Testing combinations of conditions and actions.

Checking whether software meets user needs.

Testing software on different operating systems or platforms.