Articles,

7 Common Errors While Automating Tests

3 m read
QArea Team
QArea Team Marketing Manager
March 17, 2014
Share on
Reading Time: 3 minutes

Often senior management thinks that automated testing is a sure way to reduce costs and testing efforts as well as increase delivery speed. Automated tests really can trigger a rapid feedback in terms of the system’s health, though there are different automated testing approaches which require more careful management.

Let’s consider the most common errors IT-companies do while incorporating test automation.

1. Comparing automated testing with manual testing

Automated tests cannot replace manual exploratory testing, because achieving high quality and mitigating the risk of defects need the implementation of a combination of testing levels and types. The matter is testing is not only a sequence of repeated actions. Thus, Mike Cohn originally described the triangle of automated testing suggesting that the tests’ investment profile has to concentrate on the unit level to further reduce up to the layers of application.

2. Relying on commercial tools too much

There are a lot of commercial testing tools offering simple features to automate the replay and capture for manual test cases. This approach looks good, but in fact it encourages testing via UI which results in brittle and unmaintainable tests. Again, licensed tools set some cost and restrictions on people accessing their test cases, which is another overhead, and prevent team work and collaboration. Unnecessary complexity is also created due to the fact test cases are stored outside their version control system. An alternative to these is offered by open source tools which usually solve most problems of automated testing and allow test cases to get included in their version control system easily.

3. Executing tests through the UI

While automated UI tests offer a high confidence level, they are fragile to maintain, slow to execute as well as expensive to build. However to encourage developers and testers’ collaboration, increases test execution speed and reduce test implementation costs, the lowest levels should be available to test. Thus, automated unit tests have to accept most test effort before functional, system, integration and acceptance tests. On the other hand, UI based tests can be used in case the UI itself is being tested and in case there are no practical alternatives.

4. Avoiding collaboration in test creation

Defining test cases and executable specifications ensures that all people involved have shared a full understanding of actual requirements that are developed and tested. Though such a practice mostly associates itself with unit testing, it is equally valuable for other types of testing such as acceptance testing.

5. Poor automated test maintenance

Regular tests execution results in a better realization of benefits of test automation like low cost and fast feedback. Regular execution provides the effects like highlighting failures as well as providing continuous feedback as for the system health. If you maintain automated tests manually rather than via the system of continuous integration, there may appear a big risk they fail to be run regularly or fail at all. That’s why it’s essential to execute your automated tests through the system of continuous integration.

6. Frustration with unreliable tests

The major cause why teams lose confidence in and ignore automated tests is unreliable and brittle tests. With the lost confidence the value invested into automated tests initially is dramatically reduced as well. Therefore, for the purpose of eliminating false positives resolving issues concerning brittle tests and fixing failing tests should be the first priority.

7. Hoping to cut costs by automation

While testing tool vendors quite often base their ROI calculations on labor savings solely, such analysis is unreliable since in this way the testing importance, ongoing maintenance costs and investment needed for automation practices prove undervalued.

The above errors and misconceptions of IT managers demonstrate that automated testing has its pitfalls and requires informed management and qualified manual testing.

Categories

Recent Posts

  • From Gaming Videos to Redefining Instant Messaging: Quinn Hu's Long Path to Serial Entrepreneurship

    Read more
  • 7 Reasons to Truly Love Microservices

    Read more
  • The Best Languages for Microservices

    Read more
  • QArea's Year: Summing Up 2018

    Read more
  • What's New in Golang 1.11: Release Notes Overview

    Read more
  • The Most In-Demand Backend Programming Languages of 2019

    Read more
  • Best Frontend Programming Languages to Create Beautiful and Fast Interfaces

    Read more
  • Capability Maturity Model Integration – QArea's big journey

    Read more
  • QArea is a Unique Services Provider in 2019 CEE Awards

    Read more
  • Ultimate Development Trends in 2018 to Reward Your Business in 2019

    Read more
  • Why You Should Write Your Next Microservice Using Golang

    Read more
  • Why You Should Try Golang Development Capabilities With QArea

    Read more
  • Top 7 Software Development Outsourcing Companies For Your Business Prosperous Growth

    Read more
  • CMMI Appraisal and Its Impact on QArea’s Development

    Read more
  • Software Prototyping VS Minimum Viable Product: what works for you

    Read more
  • Refactor or not refactor? Everything there is to know about refactoring

    Read more
  • 7 Stages of Software Development Cycle

    Read more
  • What is DevOps, and why is it crucial for microservices-based development

    Read more
  • Moving to Microservices: Top Products & Services

    Read more
  • QArea becomes a finalist of the European software testing awards 2018

    Read more

Subscribe

Yes

Tags
    Share on
    Privacy Preference Center