The SQA2 Blog:
Choosing the right automation framework can either spell the success of an automation effort or lay out it’s demise. Automation projects fail in many ways, primarily through lack of maintenance due to complexity. However, there are choices you can make when deciding on an automation framework that avoids these pitfalls.
The automation framework must obviously support the software it should be testing. You can quickly rule out a vast majority of frameworks by researching what kind of applications they support. If you’re looking to automate a native mobile app, you can rule out frameworks such as Selenium WebDriver that do not support native apps. Instead, you should consider an automation framework like Appium. However, if you are developing a web page application or website, Selenium WebDriver is one of the top leading open source automation frameworks that does this extremely well.
You want to choose a framework that supports programming languages such as Python, Ruby, or Groovy. Not that you can’t pick one that supports languages like Java or C#, but typically the learning curve on those languages is much steeper than that of a scripting language like Python. This is important to consider because you need to be able to hire affordable resources to join your QA team. You will find yourself in a tough budget situation if you’re forced to hire QA Engineers and up just so they might be able to contribute to the automation suite. Utilizing simpler languages like Python allow you to hire QA Analyst level resources and ramp them up on automation much easier.
Industry adoption indicates the potential for long term persistence as a viable automation framework. No one wants to build out an automation suite using a framework that goes defunct the next year. Considering this will help you make sure your investment produces value for years to come.
Support documentation of the automation framework can be highly useful for QA. They will utilize it on a daily basis. They will reference support material not only to build out the scripts, but to figure out issues that may occur. The availability of this reference material is a big factor in the selection of a framework. Also consider how many forums discuss the automation framework and how easy it is to locate this support material.
If you are a part of a large enterprise environment, you likely need to factor in assurances to the success of a project. Paid support for the automation framework achieves this for some. This paid support is either provided directly by the automation framework developer or a third party.
Your organization must consider the end user when developing your software. So too must the organizations building an automation framework. Do the research to determine whether the automation framework was developed for Developers or QA. These differences are largely what differentiate a Unit Testing Framework from an automation framework. While unit testing frameworks are focussed on proving an individual component works, automation frameworks must consider the whole application and allow for thorough testing across the board.
Quick Automation Framework Recommendations
For some quick recommendations, please read Test Automation – Best Open Source Frameworks.
Reach Out for Automation Framework Solutions
Interested in an objective assessment of an automation framework for your organization? Find out which tool is the right fit for your project. Maybe you are looking for a comprehensive and easily maintainable automation suite that produces value long term? Reach out to us and an experienced QA professional will help you determine the right solution for your organization.