Test Engineer
- Test Engineer
- the role that is played when a person
performs
testing tasks
As illustrated in the preceding figure, Test Engineer is part of the following inheritance hierarchy:
The typical role-specific responsibilities of a Test Engineer are to:
- Ensure that the requirements as specified are
testable.
- Contribute to the:
- Design and implement test scripts, test suites of test
cases, and test data.
- Execute test suites of test cases.
- Report test results.
Test engineers typically inherit the
general role responsibilities from the
role process component.
To fulfill these responsibilities, test engineers typically
should have the following expertise, training, and
experience:
- Deep knowledge of the item under test (e.g., class,
build, or application) including:
- Requirements (for blackbox testing).
- Architecture(s) (for integration testing).
- Design (for whitebox testing).
- Implementations (for whitebox testing).
- Deep knowledge of testing tasks.
- Deep knowledge of testing techniques at the following
levels:
- Deep knowledge of relevant testing tools.
- Programming (to produce test scripts).
- Excellent verbal and written communications skills that
can be used to communicate test plans and results.
- Basic knowledge of the customer's overall business
enterprise and the relevant application domain(s).
- Able to collaborate well with developers.
Test engineers typically perform the following
role-specific tasks in an iterative,
incremental, parallel, and time-boxed manner:
Test engineers typically inherit
common role tasks from the
role process component.
Test engineers typically perform these tasks as members of
the following teams:
As members of these teams, test engineers typically produce
all or part of the following work products:
- Testers are called test engineers to emphasize the fact
that testing is an engineering activity.
- This role typically inherits the
common team guidelines from the
roles process component.