Blog

To automate, or not to automate: that is the question

It goes without saying that you should choose the right tool to work with while testing process. The challenge although is in absence of good advice: When particular tools work better?
20 February 2014
Test automation
The article by a1qa
a1qa

It goes without saying that you should choose the right tool to work with while testing process. The challenge although is in absence of good advice:

  • When particular tools work better?
  • Will they suit the current projects?
  • Is it worth to risk and try something new?
  • Should you try them if deadline is near?
  • How all this tools would work together?

Most of the articles about automated testing are full of ROI, KPI and other stuff which is sometimes complicated. Often it is not clear, how it would work on your project. If there are any examples on real projects, the information is not enough or not relevant. Still, what I want to cover is how to decide which approach suits you exactly.

Below are some points that help to consider which manual tests should or should not be automated. Just because you can automate something doesn’t necessarily mean that you should. Also it is worth mentioning that development projects usually benefit a lot from test automation, but down in the bottom there is a glimpse on automation for projects that already in production.

So you’ve got a project in development and want to get automated tests running. You have some manual tests and struggling to determine which of them should be automated. Here some basic rules in such kind of a decision.

Tests that should be automated:

  1. Tests that need to be run against every build/release of the application. (Usually it is smoke, regression tests, or sanity tests).
  2. Tests that use the same flow but different data for its inputs for each test. (Programmed once they will use different datasets)
  3. Tests that need to use information from different sources during run time, like databases (SQL/NoSQL) and low-level application attributes.
  4. Tests that can be used for performance testing. (It is especially good running such kind of tests in parallel)
  5. Tests that take a long time to perform and may need to be run during breaks or overnight. (Automating these tests maximizes the use of time)
  6. Tests that involve large volumes of data. (Machines are much more faster in handling such a task)
  7. Tests that need to run against multiple configurations. (Different OS, locales and their combination, different browsers)
  8. Tests during which images and video must be captured or some low-level data retrieved to prove that the application behaved as expected.
  9. Tests that should return results ASAP every run. (Usually automated tests much faster than same tests performed by manual tester).

Tests that should not be automated:

  1. Usability tests (So far there is no way to program ISO/TR 16982:2002 and ISO 9241 efficiently).
  2. Tests that you will only run one-time. (This is a general rule. If test steps could be automated quickly without need for support and run in a loop (for large dataset input for example) it will save a manual tester considerable time and effort).
  3. Test that need to run ASAP. (As automating a test is not the fastest way to run it)
  4. Tests without predictable results or on part of application that changes every once in a while. (For successful validation it needs to have predictable results in order to produce pass and fail conditions)
  5. If a test needs to be manually watched to determine whether the result is correct.
  6. Test that cannot be 100% automated should not be automated at all, unless doing so will save a considerable amount of time. (Large and routine test preconditions)

What other options you’ve got to make a good decision? Remember, that automation can increase productivity by reducing the time taken to perform repetitive tasks. Another useful point is that automated tests cannot get bored. Anyone who has to undertake repetitive tasks over and over again will get bored. This will slow down their performance and increase the risks of missed defects.

Besides, with the help of repeated automated smoke scenarios you could monitor your application availability for 24/7/365. Main difference of the automation approach is that the test checks your app during development process as well as after the release.

And last but not the least, the more often automated test is executed, the more efficient it becomes. So, if you have a project in production, now it is possible to decide whether automation is necessary or not.

The article is prepared by Yan Gabis

More Posts

19 April 2022,
by a1qa
5 min read
What prevents companies from boosting eCommerce customer experience: 4 common mistakes
Dreaming of a flawless online shopping journey for your users? Explore 4 widespread situations that hamper achieving this goal.
Cybersecurity testing
Performance testing
Test automation
Usability testing
2 February 2022,
by a1qa
5 min read
Interview with Mike Urbanovich: How to build a robust test automation strategy?
The Head of testing department at a1qa answers the questions on how to smartly build a winning test automation strategy and talks about the advantages you may obtain with it.
Test automation
31 January 2022,
by a1qa
4 min read
Scriptless test automation: revealing the truth via 3 misconceptions
Planning to go scriptless but in doubt? Explore 3 delusions of codeless test automation and its benefits when introduced smartly.
Test automation
test auto speed
11 November 2021,
by a1qa
4 min read
Test automation: 3 core activities to keep pace with dynamic software changes
Planning to release high-quality IT solutions faster? Find out which test automation activities help keep up with constantly updating products.
Test automation
ai-ml-test-automation-mini
29 October 2021,
by a1qa
4 min read
4 key QA activities to solve test automation challenges via AI and ML
How to address the difficulties caused by implementing test automation? Learn how to do it via applying AI and ML.
Test automation
13 May 2021,
by a1qa
4 min read
How to attain in-sprint test automation to reinforce development processes
Learn how in-sprint test automation improves business workflows. Consider the top 5 essential steps to introduce it smoothly.
Test automation
12 April 2021,
by a1qa
5 min read
Watch out for 6 telecom trends and QA tips to implement them
In our article, we unleash the upcoming telecom trends and reveal how to be certain in introducing them correctly by applying QA practices.
Agile
Test automation
31 March 2021,
by a1qa
4 min read
QA scenario to introduce 6 eCommerce trends in 2021
Discover what trends will rule the eCommerce industry in 2021 and how QA can help implement them with confidence and ease.
Cybersecurity testing
Test automation
25 February 2021,
by a1qa
4 min read
9 QA points for delivering high-quality SaaS-based solutions
In the article, we’ve gathered 9 QA factors relying on the SaaS specifics that may help to perform SaaS testing with ease.
Cloud-based testing
Cybersecurity testing
Functional testing
Performance testing
Test automation

Get in touch

Please fill in the required field.
Email address seems invalid.
Please fill in the required field.
We use cookies on our website to improve its functionality and to enhance your user experience. We also use cookies for analytics. If you continue to browse this website, we will assume you agree that we can place cookies on your device. For more details, please read our Privacy and Cookies Policy.