What is Manual Testing/Benefits and drawbacks with some examples
Published: 2024-06-17 08:07:32

                           **MANUAL TESTING**

Manual testing is a software testing process in which test cases are executed manually without using any automated tool. All test cases executed by the tester manually as per to the end user's requirement. Test case reports are also generated manually.

Manual Testing is one of the most fundamental testing processes as it can find both visible and hidden issues of the software. The difference between expected output and output, given by the software, is defined as a defect. The developer fixed the defects and handed it to the tester for retesting.

**TYPES OF MANUAL TESTING**

There are three methods used for manual testing. 

1. White Box Testing
2. Black Box Testing
3. Gray Box Testing

**WHITE-BOX TESTING**

The white box testing is done by Programmer, where they check every line of a code before giving it to the QA. Since the code is visible for the programmer during the testing, that's why it is also known as White box testing.

**BLACK BOX TESTING**

The black box testing is done by the Tester, where they can check the functionality of an application or the software according to the customer needs. In this, the code is not visible while performing the testing, that's why it is known as black-box testing.

**GRAY BOX TESTING**

Gray box testing is a combination of white box and black box testing. It can be performed by a person who knew both coding and testing. And if the single person performs white box, as well as black-box testing for the application, is known as Gray box testing.

**MANUAL TESTING PROCESS**

1. First, tester observes all BRA document related to software, to select testing areas.
2. Tester analyses requirement documents to cover all requirements stated by the customer.
3. Tester write the test cases according to the requirement document.
4. All test cases are executed manually by using Black box testing and white box testing.
5. If bugs occurred then the testing team informs the development team.
6. The Development team fixes bugs and handed software to the testing team for a retest.

**BENEIFT OF MANUAL TESTING**

1.	It does not require programming knowledge while using the Black box method.
2.	It is used to test dynamically changing GUI designs.
3.	Tester interacts with software as a real user so that they are able to discover usability and user interface issues.
4.	It ensures that the software is a 100 % bug-free.
5.	It is cost-effective.
6.	Easy to learn for new testers.

**DRAWBACK OF MANUAL TESTING**

1. It requires a large number of human resources.
2. It is very time-consuming.
3. Tester develops test cases based on their skills and experience. There is no evidence that they have covered all functions or not.
4. Test cases cannot be used again. Need to develop separate test cases for each new software.
5. It does not provide testing on all aspects of testing.
6. Since two teams work together, sometimes it is difficult to understand each other's motives, it can mislead the process.

For example: 

Verify the login functionality of the Login page.

Test cases:

1. Enter valid User Name and valid Password
2. Enter valid User Name and invalid Password
3. Enter invalid User Name and valid Password
4. Enter invalid User Name and invalid Password

Example for login page test case

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e4hjhaq5e535h99kcy55.JPG)

WRITE TEST CASES IN MANUAL TESTING

Follow the below steps to write the test cases.

Step #1 – Module:

Define the backlog if login page email id textbox then describe Email ID input page. 

Step #2 – Test Case ID:

Each test case should be represented by a unique ID. It’s good practice to follow some naming convention for better understanding and discrimination purposes.

Step #3 – Test case type:

There are two types test case positive and negative. so test will be check the both sides
Eg. Positive bug - verify the email id if existing
Negative bug - user enter typical error gmoil.com instead gmail.com

Step #4 – Test Case Description:

Pick test cases properly from the test scenarios

Example:

Test scenario: Verify the login
Test case: Enter a valid username and valid password

Step #5 – Pre- Requisite:

Conditions that need to meet before executing the test case. Mention if any preconditions are available.

Example: Need a valid email account to do login

Step #6 – Test Steps:

To execute test cases, you need to perform some actions. So write proper test steps. Mention all the test steps in detail and in the order how it could be executed from the end-user’s perspective.

Example: 

1. Enter Username
2. Enter Password
3. Click Login button

Step #7 – Test Data:

You need proper test data to execute the test steps. So gather appropriate test data. The data which could be used an input for the test cases.

Example:

Username: syed@gmail.com

Step #8 – Expected Result:

The result which we expect once the test cases were executed. 

Example: Successful login

Example:

Result: Pass