Task: Run Unit Tests
Run and evaluate a set of tests to validate that the component is working properly prior to integrating the component with the rest of the system.
Purpose

To verify a unit (component, subsystem, etc) correctly fulfills its design.

Relationships
RolesPrimary: Additional: Assisting:
InputsMandatory: Optional:
  • None
External:
  • None
Outputs
Steps
Set up the test

Use information from the developer test to prepare the system and environment to run the test. Update information in the developer test if anything is incomplete or incorrect.

Set up the test environment to ensure that all the needed elements, such as hardware, software, tools, data, and so on, have been implemented and are in the test environment. Initialize the test environment to ensure all components are in the correct initial state for the start of testing.

Execute the unit test

Execute the test procedures as described in the developer test. Update information in the developer test if anything is incomplete or incorrect.

Note: Executing test procedures will vary depending on whether testing is automated or manual, and whether test components are needed as either drivers or stubs.

Evaluate test execution

Review the test results after the test executes to ensure the results are reliable and reported failures, warnings, or unexpected results are not caused by external influences (to the target-of-test), such as improper setup or data.

The test completed normally if all test procedures or scripts execute as described in the developer test, even if the software itself fails.

The test completed abnormally or prematurely if the procedures or scripts did not execute as described in the developer tests. This may be because the test itself has errors or the environment was not set up correctly.

Verify test results
If the test results indicate the failures are genuinely due to problems in the software, fix any bugs or create a bug report (change request).
Recover from halted tests
There are two major types of halted tests:
  • Fatal errors-the system fails; for example, network failures, hardware crashes, and the like.
  • Test Script Command Failures-specific to automated testing, this is when a test script cannot execute a command or a line of code.

Both types of abnormal termination to testing may exhibit the same symptoms:

  • Unexpected actions, windows, or events occur while the test script is executing.
  • Test environment appears unresponsive or in an undesirable state, such as hung or crashed.

To recover from halted tests:

  1. Determine the actual cause of the problem.
  2. Correct the problem.
  3. Set up the test environment again.
  4. Initialize the test environment again.
  5. Execute the tests again.
Properties
Multiple Occurrences
Event Driven
Ongoing
Optional
Planned
Repeatable
More Information