You are on page 1of 11

Automated Tests vs Manual Tests

Software Testing has lot of challenges both in manual as well as in automation.


Generally in manual testing scenario developers through the build to test team assuming the responsible test team or tester
will pick the build and will come to ask what the build is about?
This is the case in organizations not following so-called ‘processes’. Tester is the middleman between developing team
and the customers, handling the pressure from both the sides.
So here we go with the top challenges:
1) Testing the complete application:
There are millions of test combinations. It’s not possible to test each and every combination both in manual as well as in
automation testing(but we can achieve greater coverage). If you try all these combinations you will never ship the product
2) Regression testing:
When project goes on expanding the regression testing work simply becomes uncontrolled. Pressure to handle the current
functionality changes, previous working functionality checks and bug tracking.
3) Testing always under time constraint:
Hey tester, we want to ship this product by this weekend, are you ready for completion? When this order comes from
boss, tester simply focuses on task completion and not on the test coverage and quality of work. There is huge list of tasks
that you need to complete within specified time. This includes writing, executing, automating and reviewing the test
cases.
 Executing the test cases manually without any tool support is known as manual testing.
 Taking tool support and executing the test cases by using automation tool is known as automation testing.

Automation is the use of tools and strategies that reduce human involvement or

interaction in unskilled, repetitive or redundant tasks


 Software Testing is Ever-shrinking schedule process and minimal resources.
 It involves automating a manual process of testing

 Coding Process with Manual Tests


 Write code
 Uploading the code to some place
 Build it
 Running the code manually (in many cases filling up forms etc step by step)
 Check Log files, Database, External Services, Values of variable names, Output on the screen etc
 If it does not work, repeat the above process
 Coding Process with Automated Functional Tests
 Finish writing code
 Write a Functional Test using any tool
 Auto-compile and run
 If tests fail -> make appropriate modifications
 If tests pass -> move ahead
 Automated Tests vs Manual Tests
 Effort and Cost
 Lets assume 6 test cases
 Effort required to run all 6 manually => 10 min
 Effort required to write unit tests for all 6 cases => 10 min
 Effort required to run unit tests for all 6 cases => < 1 min
 Number of testing iterations => 5
 Total manual testing time => 50 min
 Total unit testing time => 10 min
 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
 Manual Testing is not reusable
 The effort required is the same each time
 One cannot reuse a Manual Test
 Automated Tests are completely reusable
 They can be reused without any additional effort for the lifetime of the Project
Advantages & Disadvantages of Automated Testing
Manual Testing Automation Testing
1. Time consuming and tedious: Since test
1. Fast Automation runs test cases significantly
cases are executed by human resources so it is
faster than human resource
very slow and tedious.

2.Less reliable: Manual testing is less reliable 2. More reliable: Automation tests perform


as tests may not be performed with precision precisely same operation each time they are run.
each time because of human errors.

What is Selenium

Selenium is a tool used to perform Functionality Testing and Regression Testing.

Selenium is a robust set of tools that supports rapid development of test automation for web-based
applications.

Selenium provides a rich set of testing functions specifically geared to the needs of testing of a
web application.
Selenium operations are highly flexible, allowing many options for locating UI elements and comparing expected test
results against actual application behavior.

Supports Cross Browser Testing. The Selenium tests can be run on multiple browsers.
Supports Cross Platform Testing.
Assertion statements provide an efficient way of comparing expected and actual results.
How to Select Correct Test Cases for Automation
Testing

We can have your own parameters depending on your application.

Test case executed with different set of data


Test case executed with different browser
Test case executed with different environment
Test case executed with complex business logic
Test case Involves large amount of data (Data Driven Framework)
Test case has any dependency

You might also like