Organizations expect software test automation to make software testing more efficient. But although test automation tools are gaining in popularity, automation itself remains relatively disregarded. With the Automation Body of Knowledge (ABOK), IT organizations will be better equipped to identify qualified automation resources and to offer their resources the benefit of a real automation career development track. In this week's column, Dion Johnson explains how automators may improve their skills and better market themselves to organizations of interest, even without access to the current fad tool.
Notice the following fill-in-the-blank problem:
If… (Proficiency in a manual test case repository tool) ? (Proficiency in manual testing)
And… (Proficiency in a test planning tool) ? (Proficiency in test planning)
Then (Proficiency in an automated test tool) ? (Proficiency in ___________)
The answer is "automated testing"! Clearly knowledge of a specific tool doesn't equate to expertise in the function that is aided by the tool, yet people have a problem filling in this blank. Test automation remains the only software quality engineering function driven by tool-specific knowledge. When an organization hires a manual test engineer, general testing knowledge -- not knowledge of a specific test case repository --is the determining factor. Likewise, what a potential manager knows about management processes is more important than knowledge of a specific tool. Tool knowledge is a plus, but not the most important factor.
There are bodies of knowledge, classes, and certification programs that provide engineering or management skills that can be transferred to any tool. Test automators haven't had the same luxury. Their only option is to take a tool-specific class or get a tool-specific certification. But, such classes and certifications don't guarantee that an individual will be an effective test automator. In fact, without the proper skills these classes and certifications simply mean that an automator will be better at being ineffective.
To resolve this problem we must rebuild the benchmarks that we use to assess the test automator, or we must rebuild the test automator himself.
We Can Rebuild Him
Maybe I watched too much TV as a child, but talks of rebuilding the test automator brings to mind the fictional character known as the the Six Million Dollar Man. Much like they reengineered a broken test pilot into the Six Million Dollar Man, we will rebuild the automator using automation bionics collectively named the Automation Body of Knowledge (ABOK). The ABOK is composed of the following bionic parts (skill categories):
- Automation's Role in the Testing Lifecycle
- Automation Types
- Automation Approaches
- Automation Tools
- Automation Framework Design Process
- Quality Attribute Optimization
- Programming Concepts
- Exception Handling
- Automation Analysis and Reporting
- Automation Objects
- Debugging Techniques
Let's begin the operation!
See in Greater Detail
The first set of automation bionics we'll implant provides the ability to see things in greater detail. This will allow the automator to speak more intelligently about automation concerns, make more informed decisions, and help set the direction in which the project needs to go with respect to software test automation.
- Automation's Role in the Testing Lifecycle– This includes planning-related items that are often overlooked yet are extremely important for test automation success, such as calculating automation ROI, choosing what to automate, and determining exit and entrance criteria for the test automation phase.
- Automation Types– The different types of test automation– functional regression), unit, integration, performance, etc.–are often lumped into one "test automation" category. It's important to understand the basic differences between types, even if you don't specialize in all of them, so that you can speak intelligently about them.
The following automation bionic allows the automated tester to see farther and recognize items that can impact the automation effort over time.
- Automation Approaches– Automation is more than record and playback. Approaches include data-driven, functional decomposition, and keyword. Awareness of these approaches, along with their pros and cons, is pertinent for building tests that last.
See Things That Normally Can't Be Seen
The normal automation eye is conditioned in a way that limits what the automator is able to see. However, the following automation bionic provides the automator with sight beyond one's wildest dreams:
- Automation Tools– Organizations often