Task: Design Testability Elements
This task describes how to design test-specific functionality.
Disciplines: Analysis & Design
Relationships
RolesPrimary Performer: Additional Performers:
InputsMandatory:
    Optional:
      Outputs
        Steps
        Identify Test-Specific Classes and Packages
        Purpose To identify and design the classes and packages that will provide the needed test specific functionality. 

        Based on input from the test designer identify and specify test-specific classes and packages in the design model.

        A driver or stub of a design class has the same methods as the original class, but there is no behavior defined for the methods other than to provide for input (to the target for test) or returning a pre-defined value (to the target for test).

        A driver or stub of a design package contains simulated classes for the classes that form the public interface of the original package.

        Design Interface to Automated Test Tool
        Purpose To identify the interface necessary for the integration of an automated test tool with test-specific functionality. 

        Identify what behavior is needed to make your test automation tool communicate with your target for test in an efficient way. Identify and describe the appropriate design classes and packages.

        Design Test Procedure Behavior
        Purpose To automate test procedures for which there is no automated test tool available. 

        To automate test procedures for which there is no automation tool, identify the appropriate design classes and packages. Use the test cases and the use cases they derive from as input.