The test engineer needs to analyze the existing development and test process. During this analytical phase, the test engineer determines whether the current testing process meets the defined prerequisites listed below.
- Testing goals and objectives have been defined
- Testing strategies have been defined
- Tools needed are available to implement planned strategies
- A testing methodology has been defined
- The testing process is communicated and documented
- The testing process is being measured
- The testing process implementation is audited
- Users are involved throughout the test program
- Test team is involved from the beginning of the system development lifecycle
- Testing is conducted in parallel to the system development lifecycle
- Schedule allows for process implementation
- Budget allows for process implementation
- Understand whether the organization is seeking to comply with industry quality and process maturity guidelines (i.e. CMM, ISO)
The purpose of analyzing the organization's test process is to identify the test goals, objectives and strategies, which may be inherent in the test process. These top-level elements of test planning are the cornerstones for which a project’s test program develops.
The purpose of documenting the test tool introduction process is to ensure that the test team has a clearly defined way of implementing automated testing, so that the team can fully leverage the functionality and time saving features of the automated test tool.
The additional time and cost associated with the documentation and implementation of a test tool introduction process is sometimes an issue. A well-planned and well-executed process will pay for itself many times over by ensuring a higher level of defect detection and fielded software fixes, shortening product development cycles, and providing labor savings. A test team, which can be disciplined in defining test goals, and can reflect the test goals within defined processes, the skills of test team staff, and the selection of a test tool, will perform well. It is this kind of discipline, exercised incrementally, which supports the test team's (and the entire organization's) advancement in quality and maturity from one level to the next.
Safeguard Integrity of the Automated Test Process
To safeguard the integrity of the automated test process the test team needs to exercise new releases of an automated test tool in an isolated environment; it can then validate that the tool performs up to product specifications and marketing claims. The test team should verify that the upgrades would run in the organization’s current environment.
Although, the previous version of the tool may have performed correctly and a new upgrade may perform well in other environments, the upgrade might adversely affect the team’s particular environment. Therefore, the test team needs to make sure that the test of the test tool upgrade is performed in an isolated environment.
Additionally, using a configuration management tool to baseline the test repository will help safeguard the integrity of the automated testing process./p>
Although process definition, metric gathering and process improvement activities can be expensive and time-consuming, the good news is that creating and documenting standards and procedures for an automated test program is no more expensive than the same activity for a manual test program. In fact, use of an automated test tool with scripting, test identification, and automatic documentation capabilities can reduce costs by providing some of the framework and content required.
Considering the use of a test tool on a particular project
Once the test engineer has reviewed the test process and has defined test goals, objectives and strategies, the test engineer can decide whether to continue the consideration of using an automated test tool. Specifically, the test engineer seeks to verify that the previously identified automated