6.5 Transitioning Staff to Automation
Since the advent of testing tools there has been talk that automation kills testing jobs. For large programs heavily dependent on manual testers we would expect to see a reduction of an inefficient process. However, automation mostly helps testers increase their focus on developing quality tests rather than on time consuming "key pounding" test execution activity.
It is very important to make sure staff understand that they are valued for their knowledge of systems and their testing acumen. It is also important to acknowledge that in order for automation to be successful, there are different roles, and not all roles require programing skills. Section 3.5 describes the various roles necessary for the tasks required to make automation successful.
Test automation solutions can be contracted out to firms knowledgeable in creating and maintaining test automation frameworks. In this scenario, a firm would be contracted to assist in automating all or part of a system. Once the capability is developed the government would request documentation, training, and transitioning as part of the final deliverable.
Government developed automation would require the selection of staff with the appropriate skills and training so that the process of building out automation does not become a learn-as-you-go exercise, which ultimately will not show a high return on investment. Appendix A covers many resources that can provide the necessary knowledge for team members.
In addition to the wide range of test automation tools described in Section 5.3.1 and listed in Appendix B there exist pre-made frameworks that can be used with existing tools. These frameworks can offer a shortcut to a build-from-scratch strategy, and often one can continue to build additional functionality to the base framework libraries.
Regardless of the solution used in migrating to automation, a tool-agnostic approach that abstracts test data from test tools provides the greatest flexibility and overall longevity.