BES Playbook

3.2 Management Support

The role of management, at all levels, is key to the success of test automation in AF programs. Management can:

  • Identify projects and programs where automation would likely provide benefits to the overall testing process
  • Identify staff (government or contractors) who can be targeted to deliver automated solutions
  • Identify relevant training and certification to ready staff for automation
  • Anticipate funding requirements for test automation resources (people, tools, environments, process adjustment)
  • Ensure that an adequate assessment of test tools takes place through market research and evaluation
  • Provide equipment and environments in which to develop and execute automation
  • Adopt cross-enterprise "Best Practices" for sharing of test automation methods and technology
  • Define contract structures and CLINs that promote use of automation

3.2.1 Identifying and Funding Resources

From a funding perspective, there are three areas a manager should consider when planning for test automation.

People

Who will be tasked to do the automation? And who will be implementing the testing tools framework? Government staff? Contractors? A combination? This needs to be decided on up front as it will affect the process by which these resources are identified and the timeframe under which they can be brought in to accomplish the work, including any training time required prior to project start.

If the automation skillset is not easily found within government, a first step might be to contract the work out to an organization with expertise in this area. This will save time and money, and avoid missteps.

Test Tools

Software test tools have costs associated with licenses, maintenance, training, and support. Even tools that are open source software will require maintenance, training, and possibly support. However, the absence of an initial license fee may provide a significant cost savings (see section 6.3). This playbook will describe industry standard testing tools and the trade-offs between open source versus Commercial-Off-The-Shelf (COTS) software.

Test Environments

Test environments where automated tools reside can include: - An individual tester's workstation - A test lab with specific computers dedicated to automation - A server with virtual machine images - A cloud-based setup - A cloud-based service (SaaS)