Software Engineering | Automated Testing

Automated Testing is a technique where Tester write Scripts by own and uses suitable Software or Automation Tool to test the software. It is Automation Process of a Manual Process. Allows to execute repetitive task without intervention of Manual Tester.

Manual Vs. Automated Testing:

Not accurate at all times due to Human Error, Therefore Less Reliable. Since it is performed by third party tools and/or Scripts, therefore More Reliable.
Heavy Investment for Human Resources. Investment for Tools rather than for Human Resources.
Time Consuming. Faster than Manual Testing as it is executed by Tools.
Allows for Careful Human Observation. Practical option when test cases are run repeatedly.
Initial Investment is lower which in turns Lowers the Returns. Higher Initial Investment, hence higher Rate of Return.

Automation Testing Process:

  1. Test Tool Selection:
    There will be some criteria for Selection of tool. Majority of the criteria includes : Do we have skilled resource to allocate for automation tasks, Budget constraints, Do the tool satisfy our needs ?
  2. Define Scope of Automation:
    This includes few basic points such as : Framework should support Automation Scripts, Less Maintenance must be there, High Return on Investment, Not much complex Test Cases
  3. Planning, Design and Development:
    For this we need to Install particular frameworks or libraries, start designing and developing the test cases such as NUnit, JUnit, QUnit or required Software Automation Tools
  4. Test Execution:
    Final Execution of test cases will take place in this phase and it depends on Language to Language such as for .NET, we’ll be using NUnit, for Java, we’ll be using JUnit, for JavaScript, we’ll be using QUnit or Jasmine, etc.
  5. Maintenance:
    Creation of Reports generated after Tests and that should be documented so as to refer that in future for next iterations

Popular Automation Tools:

  • Selenium
  • QTP
  • Sikuli
  • Appium
  • Jmeter
  • TestNG
  • Zephyr
  • UFT

Why to transform from Manual to Automated Testing ?
In the year 1994, An aircraft completing its Routine flight crashed just before landing. This was due to some bug or defect in the Software. The Testers didn’t even care about the final testing and hence this accident happened. So in order to replace for few of the Manual Tests (mandatory), we need Automation Testing.

Reasons for Transformation:

  • Quality Assurance
  • Error or Bug free Software
  • Safety Assurance
  • Multiple OS Support

Advantages of Automation Testing:

  • Simplifies Test Case Execution
  • Improves Reliability of Tests
  • Increases amount of test coverage
  • Minimizing Human Interaction
  • Saves Time and Money
  • Test Results are made public

Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using or mail your article to See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :


Please write to us at to report any issue with the above content.