Disadvantages Of Automation

qa toddy
Javarevisited
Published in
3 min readAug 9, 2021

Break down traditional QA silos and empower devs to own quality checks.

Are you thinking about implementing an automation suite?
I’m sure you’ve identified the advantages of automation, right?
But have you considered the disadvantages?

There mightn’t be many, but the few that do exist can be enough to leave you scratching your head if developing it further is worth it.

Below are 5 considerations you should keep in mind when thinking about the disadvantages of automation.

Photo by Joshua Aragon on Unsplash
  1. Maintenance: Understanding how much maintenance is required upfront can be tricky. Ensure that you have a clear idea of how many tests you plan to automate.

    The larger the automation suite, the higher the potential maintenance. It pays to also think about the knowledge around the programming language you intend to use.

    Maintenance may increase as a result of:
    * Product redesigns.
    * Programming language deprecations.
    * Tool deprecations.
    * Third-party integrations.

    Forecasting can be unpredictable. Ensure your team understands the importance of maintenance if it’s not already clear. Doing so will help with allocating time when required.
  2. Reliability: Flaky tests are the bain of UI automation. Test scenarios that were working yesterday are now failing, leaving us puzzled. We’re left wondering if the issue is the test script, the test environment, or something unrelated. There is no perfect solution for fixing these flaky tests.

    We may eventually lose a little bit of confidence in its reliability and may opt for manual checks in favour of progression.

    Our sense of reliability may decrease due to a lack of:
    * Test-specific page attributes.
    * Clear logging and reporting.
    * Sufficient coding experience/knowledge.
    * Absence of automatic test retrys.
    * Reports with screenshots.
  3. Runtime: UI tests naturally take longer to run in comparison to a single unit test. Interactions on the webpage are slow and can be affected by different factors.

    Slow runtimes can be a result of:
    * Client-side rendering
    * Poor server response
    * Initial test data setup
    * Retry of failing tests
    * Badly written test scripts


    Avoiding these points can be achieved with mindful planning.
  4. Static: Test scripts and automation are great for replicating repetitive steps. But, they will not help to find edge case bugs. Automation scripts are static, and the only way for them to perform something different is with an active change.

    Automation test scripts are static, so remember the following:
    * They don’t change on their own.
    * Worthless for any other type of testing other than regression.
  5. Expensive: With all of the above combined, automation can become far more expensive than you realise. With frequent maintenance required, and the potential to break one day and work the next sporadically, the cost for all of this work adds up.

    Out of the box solutions can be great, but most tend to come with a price tag. Or if you have testers who are setting it up themselves with little coding experience, that’s also an expense to consider.

    Potential contributing expenses:
    * Enterprise solution
    * Employee time
    * Maintenance

With all things considered, automation has some real advantages, but being aware of the potential disadvantages will help you and your team plan for any pitfalls that you may experience along the way.

Subscribe if you like what you’ve read ? Leave a clap 👏 and stay tuned for more!

--

--

qa toddy
Javarevisited

Knowledge sharing to re-think our approach to QA