Test Automation and Agile

Original author: Moataz Nabil
  • Transfer

We are approaching the launch of our new course: Automator in Testing . Today is the last open lesson, then open day and the battle.

At the past two such events, the question of the relationship between Agile and automation has been repeatedly asked. So, there was a good and not very large material in the bins, which we share with you.


Software testing following the principles of agile development is called Agile Testing. Agile is an iterative development methodology in which the requirements are developed in the course of cooperation between the client and self-organizing teams and flexible coordination with the client's needs.

Traditional testing (cascade model) vs. Agile Testing

Traditional testing

  • It follows a top-down approach: the completion of one phase leads to the beginning of the next, which makes it difficult to introduce changes.
  • The project manager is the manager.
  • Customer involvement is required in the initial stages of negotiating requirements.

Agile Testing

  • Each team member is responsible in accordance with their role and work.
  • A fairly flexible approach that allows you to make changes at almost any stage.
  • Customer requirements are needed throughout development.

Best Practices in Agile Testing

  1. Unit testing automation.
  2. Development through testing.
  3. Automation of regression testing.
  4. Research testing.

How Agile is Associated with Testing

  • Testing advances the project.
  • Testing is NOT a phase.
  • Everyone is testing.
  • Reduce feedback latency - start testing as soon as possible and more often.
  • Testing reflects expectations.
  • Keep your code clean and fix bugs quickly.
  • Get rid of excess documentation.
  • Testing is part of the “DoD” Definition of Done.
  • From “Testing after Development” to “Development through Testing”.

Becoming an Agile Automation Tester

  • Provide continuous feedback.
  • Bring value to the customer.
  • Provide face-to-face communications.
  • Do not complicate.
  • Implement improvements.
  • Respond to change.
  • Self-organize.
  • Focus on people.

What is wrong with Manual Testing?

  • Manual testing of all areas and negative scenarios - requires a lot of time and money.
  • Sites with multiple localizations are difficult to test manually.
  • Manual testing can be boring, and therefore serve as a source of errors.
  • Automation improves quality and raises the morale of the team.
  • Automation does not require human intervention. Their launch does not require observation (for example, at night).
  • Automation speeds up testing.
  • Automation increases test coverage.

What test cases should be automated?

  • Test cases for automation can be selected by the criterion of Return on Investment (ROI)
  • High Risk Test Cases - Business Critical Test Cases
  • Duplicate Test Cases
  • Test cases that are too complicated and inconvenient to perform manually
  • Test cases that require a lot of time.

What test cases should not be automated?

  • Test cases that were developed recently and have not yet been verified manually.
  • Test cases, the requirements for which are constantly changing.
  • Test cases on an ad-hoc basis.

Benefits of Automated Testing

  • Time saving.
  • Speed.
  • Stability.
  • Test suite support.
  • Reusability.
  • Increased coverage.
  • Cost reduction.

Career in Test Automation


  • Automation is becoming a critical part of the business due to ongoing changes in software development.
  • Test automation requires experience in software development, as well as knowledge of the basics of testing.


  • Fast career growth.
  • Software development for software testing.
  • Balanced career: gain knowledge in both testing and development.

Good luck and success in testing :)


We are waiting, as always, for questions, wishes, comments here or in an open lesson , which will be dedicated to a similar topic (well, or at Open Doors Day ).

Also popular now: