Activity:
Implement Test
Purpose
- To create reusable test scripts
- To maintain traceability of the test implementation artifacts back to the associated
test cases and use cases or requirements for test
|
Steps
|
Input Artifacts:
|
Resulting Artifacts:
|
Worker:
Test Designer |
Purpose
- To create appropriate test scripts which implement (and execute) the test cases and test
procedures as desired
|
Tool Mentors:
|
Perform the following:
For each structured test procedure in the test model at least one test script is
created.
The following considerations should be addressed when creating or acquiring test
scripts:
- maximize test script reuse
- minimize test script maintenance
- use existing scripts when feasible
- use test tools to create test scripts instead of programming them (when feasible)
- refer to application GUI objects and actions in the method that is most stable (such as
by object name or using mouse clicks)
The following steps are performed to create or acquire test scripts:
- Review existing test scripts for potential use
- Set-up the test environment (including all hardware, software, tools, data, and
application build)
- Initialize the environment (to ensure the environment is in the proper state or
condition for the test)
- Create or acquire the test scripts:
- Record / capture: for each structured test procedure, execute the test procedure
to create a new test script by following the steps / actions identified in the
structured test procedure and using the appropriate recording techniques (to maximize
reuse and minimize maintenance)
- Modifying existing scripts: edit the existing manually, or delete the non-required
instructions and re-record the new instructions using the recording description above
- Programming: for each structured test procedure, generate the instructions using
the appropriate programming techniques
- Continue to create or acquire test scripts until the desired / required test scripts
have been created
- Modify the test scripts as necessary (as defined in the test model)
Upon the completion of creating or acquiring test scripts, they should be tested /
debugged to ensure the test scripts implement the tests appropriately and execute
properly. This step should be performed using the same version of the software build used
to create / acquire the test scripts.
The following steps are performed to test / debug test scripts:
- Set-up the test environment (if necessary)
- Re-initialize the environment
- Execute the test scripts
- Evaluate Results
- Determine appropriate next action:
- Results as expected / desired: no actions necessary
- Unexpected results: determine cause of problem and resolve
Upon the completion of creating or acquiring test scripts, a requirements-based test
coverage report should be generated to identify the number or percentage of requirements
for test that have test scripts.
Purpose
- To specify the requirements for software functions needed to support the implementation
or execution of testing
|
Identify the test-specific functionality that should be included in the design model
and in the implementation model. The most common use of test specific functionality is
during integration test where there is the need to provide stubs or drivers for components
or systems that are not yet included or implemented.
There are two styles:
- Stubs and drivers that are simply "dummies" with no functionality other than
being able to enter a specific value (or values) or return a pre-defined value (or
values).
- Stubs and drivers that are more intelligent and can "simulate" more complex
behavior.
Use the second style prudently because it takes more resources to implement.
A balance between value added (by creating a complex stub / driver) and the
effort necessary to implement and test the stub / driver is necessary.
Other reasons to build test-specific components are:
- To automate test procedures for regression test when no test automation tool, or
- Building an interface between your target for test and a test automation tool.
Describe your result as test-specific requirements on the design and implementation
models to be handed to the Designer and the Implementer.
Purpose
- To create and maintain data, stored externally to the test scripts, that are used by the
test scripts during test execution.
|
External data sets provide value to test in the following ways:
- data is external to the test script eliminating hard-coded references in the test script
- external data can be modified easily with little or no test script impact
- additional test cases can easily be added to the test data with little or no test script
modifications
- external data can be shared with many test scripts
- external data sets can contain data values used to control the test scripts (conditional
branching logic)
To create external data sets, the following steps are performed:
- Review the test model, test cases, and structured test procedures
- Create the data sets using the appropriate tools and methods
- Modify the test scripts to utilize the data sets
Upon the completion of creating or acquiring test scripts, they should be tested /
debugged to ensure the test scripts implement the tests appropriately and execute
properly. This step should be performed using the same version of the software build used
to create / acquire the test scripts.
The following steps are performed to test / debug test scripts:
- Set-up the test environment (if necessary)
- Re-initialize the environment
- Execute the test scripts
- Evaluate Results
- Determine appropriate next action:
- Results as expected / desired: no actions necessary
- Unexpected results: determine cause of problem and resolve
|