Artifact: Test Case
This artifact defines a specific set of pre-conditions, post-conditions, test inputs and expected results for the purpose of evaluating specific behavior of the system.
Purpose

The purpose of this artifact is to capture the test methods of the system so that consistent testing can be repeated.  The test cases identify the input data, conditions, and expected results to verify proper behavior of the system for a specific scenario and associated set of system requirements.

Relationships
Container Artifact
RolesResponsible: Modified By:
TasksInput To: Output From:
Description
Main Description

A test case tests the behavior of the software, system, or element under test in a very specific circumstance. The test case is defined by

  • A specific sequence of events received by the external environment and internal actions by the system
  • A specific set of data values for each private or shared data element and action parameter
  • An expected, measurable outcome

A test case is often represented by a textual description, but usually a UML sequence diagram is preferred, since it is less prone to misinterpretation. Activity diagrams and state machines can be used to specify sets of test cases.

A test case is also known as a test vector. 

NotationSequence diagrams, activity diagrams, and state diagrams are often used, with accompanying descriptive text.
Illustrations
Templates
Key Considerations
A test case must be highly specific in terms of sequence of actions and/or events, data values, and measurable outcomes.
Tailoring
Impact of not havingThis work product defines the control flow and data set for a specific test. Without this definition, it is impossible to manage a repeatable set of tests for reliable system testing.
Representation OptionsA test case is often represented by a textual description.

Usually a UML sequence diagram is preferred, since it is less prone to misinterpretation.

More Information
Concepts