Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Get Started With Test Automation

DZone's Guide to

Get Started With Test Automation

Learn how to easily evaluate automation tools and get started using them in your software testing to lower risk as well as costs.

· DevOps Zone ·
Free Resource

Learn more about how CareerBuilder was able to resolve customer issues 5x faster by using Scalyr, the fastest log management tool on the market. 

When implementing test automation there are several things to consider, including: how much can we automate? which tool is right for us? can we justify the initial investment of time and effort? and much more.

It's a common challenge in the initial phase that steep learning curves make it difficult to evaluate automation tools within a reasonable time frame. This can cause the evaluation to drag out and in the worst cases, automation projects are tanked altogether.

This post outlines some simple steps for evaluating and implementing automation tools. It is based on our experience that it is possible to get started with test automation in a matter of weeks, not months.

1. Define Evaluation Criteria

When choosing an automation tool, whether it is for automating tests or business processes, it is important to set up some criteria for evaluating whether the tool is the right fit for your organization.

It is our experience that to find the right automation tool there needs to be a fit in the following three areas:

  • Technology fit
  • Process fit
  • Organizational fit

The evaluation phase should not have to take more than five days. If it takes much longer to do an immediate evaluation of a tool, it might be because the tool brings with it an unnecessary amount of complexity.

Technology Fit

Define the technology that you are looking to automate, and then find out if the automation tool in question supports that technology. In most cases, you can place it in one of the following main categories:

  • Web-based technology or mobile web application
  • Desktop-based application
  • SAP-based application
  • Citrix or other virtual desktop-based technology

Process Fit

Start by outlining two or three flows that you want to automate. We recommend identifying some common processes that are often repeated and which, if automated, would bring about significant efficiency gains.Then use these cases for evaluating a tool's user-friendliness; how easy is it to build these flows as automation cases with the respective tool?

Organizational Fit

To make sure that an automation tool is a good fit for your organization, you should distribute the relevant documentation and materials related to the tool to the respective stakeholders:

  • IT
  • Operations
  • DevOps
  • Security
  • Management and business owners
  • etc.

2. Implementation

Once the alternatives have been evaluated, and you've chosen the tool to proceed with, it's time to roll it out in your organization. Implementation consists of two main activities: Training and deployment.

Training

Ideally, the automation tool vendor should provide both a training program and readily available training materials designed to facilitate an advanced and fast internal adoption of the tool. The goal of a training program should be to enable participants to implement complete automation within their business domain.

A training program could look like this:  
Day 1 - Onsite:
  • Introduction to the tool
  • Case-based learning with hands-on exercises
  • Self-study: The users presents up to five cases to work with during training week
Days 2-4 - Online:
  • Daily progress follow-ups
  • Online sessions with automation specialists as needed
  • Ongoing tracking of key challenges
Day 5 - Onsite:
  • Introduction to the tool's advanced features
  • Status on key challenges
  • Presentation of solutions created during self-study

Deployment

The purpose of this phase is to ensure that the components of the automation tool are installed properly in a "best fit" deployment from the get-go and that scheduled runs of automation flows work as intended.

The deployment phase consists of the following deliverables:

  • Assessment and definition of installation and deployment method
  • Establishing required servers and environments
  • "Ready to launch" installation and configuration
  • Instructions on management and maintenance of the deployed platform

Find out more about how Scalyr built a proprietary database that does not use text indexing for their log management tool.

Topics:
devops ,test automation ,software testing ,qa

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}