As the world is moving toward a new era in Technology and business with respect to Testing, we will just have a walkthrough on Manual Testing and Automation testing.

1. Manual Testing is Boring
• No one wants to keep filling the same forms
• There is nothing new to learn when one tests manually
• People tend to neglect running manual tests
• No one maintains a list of the tests required to be run if they are manual tests
Automated tests on the other hand are Code
• They are fun and challenging to write
• One has to carefully think of design for reusability and coverage
• They require analytical and reasoning skills
• They represent contribution that is usable in the future
2. Manual Testing is not reusable
• The effort required is the same each time
• One cannot reuse a Manual Test
Automated Tests are completely reusable
• Once written the Automated Tests form a part of the codebase
• They can be reused without any additional effort for the lifetime of the Project
3. Manual Testing has a high risk of missing out on something
• Each time a developer runs manual tests it is likely he will miss out on an important test case
• New developers may have no clue about the battery of tests to be run
Automated Tests have zero risk of missing out a pre-decided test
• Once a Test becomes a part of Continuous Integration – it will run without someone having to remember to run it
4. Manual Tests do not provide a safety-net
• Manual tests are run post-facto and hence only drive bug-patching
Automated Tests provide a safety-net for refactoring / additions
• Even New developers who have never touched the code can be confident about making changes
5. Manual Tests have no training value
• Manual Test are a mechanical process and does not have defined training values
Automated Tests act as documentation
• Reading a set of Unit Tests clarifies the purpose of a codebase
• They provide a clear contract and define the requirement
• They provide visibility into different use cases and expected results
• A new developer can understand a piece of code much more by looking at Unit Tests than by looking at the code
• Unit Tests define the expected behavior of the code

Posted by Sudharsan S
Comments (2)
January 16th, 2012

Comments (2)

Sreenivasulu chittooru - January 17th, 2012

Hi Sudharsan, while automating the script whether we can take input data directly from test case? If yes, then please explain the process. I want to learn this process.

Sameer - January 17th, 2012

The above article outlines the difference between the two but in a practicle life cyle one often looks at the cost of resources to do automation, time required to automate and the reusability aspects of the tests apart from the size of the project to determine if automation meets the overall project requirements. There are clear advantages of manual testing that could be made in this article to make it balanced.

Comments are closed.