0% found this document useful (0 votes)
34 views

What Is Manual and Automation Testing

Uploaded by

Sunita
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

What Is Manual and Automation Testing

Uploaded by

Sunita
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

What is Manual Testing?

Manual testing is the process of testing the software manually to find the
defects. Tester should have the perspective of an end-user and to ensure all
the features are working as mentioned in the requirement document. In this
process, testers execute the test cases and generate the reports manually
without using any automation tools.
Types of Manual Testing:
1. Black Box Testing
2. White Box Testing
3. Unit Testing
4. System Testing
5. Integration Testing
6. Acceptance Testing
Black Box Testing:
Black Box Testing is a software testing method in which testers evaluate the
functionality of the software under test without looking at the internal code
structure. This can be applied to every level of software testing such as Unit,
Integration, System and Acceptance Testing.
White Box Testing:
White Box Testing is also called Glass Box, Clear Box, and Structural Testing.
It is based on application’s internal code structure. In white-box testing, an
internal perspective of the system, as well as programming skills, are used to
design test cases. This testing usually done at the unit level.

Unit Testing:
Unit Testing is also called as Module Testing or Component Testing. It is done
to check whether the individual unit or module of the source code is working
properly. It is done by the developers in developer’s environment.

System Testing:
Testing the fully integrated application to evaluate the systems compliance
with its specified requirements is called System Testing AKA End to End
testing. Verifying the completed system to ensure that the application works
as intended or not.

Integration Testing:
Integration Testing is the process of testing the interface between the two
software units. Integration testing is done by three ways. Big Bang Approach,
Top Down Approach, Bottom-Up Approach

Acceptance Testing:
It is also known as pre-production testing. This is done by the end users
along with the testers to validate the functionality of the application. After
successful acceptance testing. Formal testing conducted to determine
whether an application is developed as per the requirement. It allows
customer to accept or reject the application. Types of acceptance testing are
Alpha, Beta & Gamma.

There are many types of software testing but here we dealt mainly about
Manual and Automation Testing. Here you could read the complete list
of software testing types.
When to use Manual Testing?
Exploratory Testing:
Exploratory testing will be carried out by domain experts. They perform testing
just by exploring the functionalities of the application without having the
knowledge of the requirements.

Usability Testing:
To verify whether the application is user-friendly or not and was comfortably
used by an end-user or not. The main focus in this testing is to check whether
the end-user can understand and operate the application easily or not. An
application should be self-exploratory and must not require training to operate
it.

Ad-hoc Testing:
Ad-hoc testing is quite opposite to formal testing. It is an informal testing type.
In Adhoc testing, testers randomly test the application without following any
documents and test design techniques. This testing is primarily performed if
the knowledge of testers in the application under test is very high. Testers
randomly test the application without any test cases or any business
requirement document.

When do you prefer Manual Testing over Automation Testing?


We prefer Manual Testing over Automation Testing in the following scenarios

1. When the project is in the initial development stage.


2. When testing user interfaces especially their visual aspects.
3. If the project is a short term and writing scripts will be time-
consuming when compared to manual testing
4. When exploratory or Adhoc testing needs to be performed.
5. If the test case is not automatable. Example captcha.
Manual Testing Pros and Cons
Advantages of Manual Testing:
• Manual testing can be done on all kinds of applications
• It is preferable for short life cycle products
• Newly designed test cases should be executed manually
• Application must be tested manually before it is automated
• It is preferred in the projects where the requirements change
frequently and for the products where the GUI changes constantly
• It is cheaper in terms of initial investment compared to
Automation testing
• Requires less time and expense to begin productive manual
testing
• It allows tester to perform adhoc testing
• There is no necessity to the tester to have knowledge on
Automation Tools
Disadvantages of Manual Testing:
• Manual Testing is time-consuming mainly while doing regression
testing.
• Manual testing is less reliable compared to automation testing
because it is conducted by humans. So there will always be
prone to errors and mistakes.
• Expensive over automation testing in the long run
It is not possible to reuse because this process can’t be recorded

What is Automation Testing?


Automation testing is the process of testing the software using an automation
tools to find the defects. In this process, executing the test scripts and
generating the results are performed automatically by automation tools. Some
most popular tools to do automation testing are HP QTP/UFT, Selenium
WebDriver, etc.,
Some of the popular automation testing tools
1. HP QTP(Quick Test Professional)/UFT(Unified Functional
Testing)
2. Selenium
3. LoadRunner
4. IBM Rational Functional Tester
5. SilkTest
6. TestComplete
7. WinRunner
8. WATIR
When to use Automation Testing?
We do Automation testing in the following areas:

Regression Testing:
Repeated testing of an already tested program, after modification, to discover
any defects introduced or uncovered as a result of the changes in the software
being tested or in another related or unrelated software components. So,
regression testing is best suitable for automated testing because of frequent
code changes and it is beyond the human capacity to execute tests in a timely
manner.

Load Testing:
It is to verify that the system/application can handle the expected number of
transactions and to verify the system/application behavior under both normal
and peak load conditions. Automated testing is also the best way to complete
the testing efficiently when it comes to load testing. It is best suited for
automation testing.

Performance Testing:
This type of testing determines or validates the speed, scalability, and/or
stability characteristics of the system or application under test. Performance is
concerned with achieving response times, throughput, and resource-utilization
levels that meet the performance objectives for the project or product. It is
best suited for automation testing.

The tests which can be done through automated or manual approach:


Integration Testing:
Integration Testing is the process of testing the interface between the two
software units. Integration testing is done by multiple approaches such as Big
Bang Approach, Top-Down Approach, Bottom-Up Approach, and Hybrid
Integration approach.

System Testing:
Testing the fully integrated application to evaluate the system’s compliance
with its specified requirements is called System Testing AKA End to End
testing. Verifying the completed system to ensure that the application works
as intended or not.

Unit Testing:
Unit Testing is also called Module Testing or Component Testing. It is done to
check whether the individual unit or module of the source code is working
properly. It is done by the developers in the developer’s environment.

Acceptance Testing:
It is also known as pre-production testing. This is done by the end-users
along with the testers to validate the functionality of the application. After
successful acceptance testing. Formal testing conducted to determine
whether an application is developed as per the requirement. It allows the
customer to accept or reject the application. Types of acceptance testing are
Alpha, Beta & Gamma.

In interviews, you may be asked to answer the following question

Which tests cannot be automated?


Let’s see which tests cannot be automated. Test which take too much effort to
automate are
1. Exploratory Testing
2. User interface testing
3. Adhoc Testing
When do you prefer Automation Testing over Manual Testing?
We prefer Manual Testing over Automation Testing in the following scenarios

1. To handle repetitive and time-consuming tasks


2. When there is a need of parallel testing
3. To do non-functional testing like load, performance, stress testing
4. To avoid human errors
Automated Testing Pros and Cons
Advantages of automated testing:
• Automation testing is faster in execution
• It is cheaper compared to manual testing in the long run
• Automated testing is more reliable
• Automated testing is more powerful and versatile
• It is mostly used for regression testing
• It is reusable because the automation process can be recorded
• Does not require human intervention. Test scripts can be run
unattended
• It helps to increase the test coverage
Disadvantages of Automated Testing:
• It is recommended only for stable products
• Automation testing is expensive initially
• Most of the automation tools are expensive
• It has some limitations such as handling captcha, getting visual
aspects of UI such as fonts, color, sizes etc.,
• Huge maintenance in case of repeated changes in the
requirements

You might also like