As we hear the word "Testing", the very first sequel word that comes into my mind is "Manual Testing". Manual testing is a type of software testing in which testers manually verify and validate if the end product satisfy the customer requirements and specifications in both Functional and Non-Functional aspects. The testing is performed in a similar way as an end user to identify bugs and defects in the software or application.
We use the STLC(Software Testing Life Cycle) to perform any type of testing. The phases of STLC are as below:
1. Requirement Analysis
This is the very first phase of STLC where the testers analyze the project requirements by discussing it with various stakeholder and prepare the RTM(Requirement Traceability Matrix is a document where we associate the requirements with the corresponding test cases).
2.Test planning
In this phase the test manager determines the Test plan or strategy, test tool selection, types of testing in scope, cost estimation, resource planning, Trainings required etc.
3. Test case development
In Test case development phase, the test cases, scripts and data is created.
4. Test Environment setup
In this phase, the environment for testing is setup on the basis of software and hardware requirement. Smoke testing is performed in this phase.
5. Test Execution
In this phase, Test cases, scripts are executed and the results are documented. The bugs/defects are also reported and post the defect is fixed, retesting is also done in this phase.
6. Test Closure
This is the last phase of STLC, where the testers report the test results and test completion metrics. In this phase EOTR (End of Testing report) is also prepared and submitted by the Testers.
There are enormous types of Manual Testing which can be performed in both Functional and Non-Functional aspects. Here is an article on various types of Testing
https://dev.to/supriya16/functional-testing-vs-non-functional-testing-3ep3
There is no environment limitations. We can perform manual testing in any kind of Application, Software, OS etc.
No programming language knowledge is required for developing and executing the test cases.
Manual testing is the best approach for dynamically changing GUI(Graphic User Interface).
Testers interact more with the AUT, which helps in finding the defects easily and making the application defect free.
Demerits of Manual Testing:
As humans are tend to make errors, Manual testing provides less accuracy.
Performance testing is not possible in Manual testing as its nearly impossible to run the same test cases for n number of times.
Testing with large amount of data is a very tedious process and time consuming.
*Manual Testing Example for a Banking Application:
*
In a Banking application we could build lot of test cases Manually for instance,
- A new customer wants to register themselves and then open a Stocks and Funds portfolio with the same bank. In this case we can develop test cases for the customer registration scenario, customer logging successfully scenario, customer adding funds to the account scenario, customer opening another Stock portfolio account with the bank scenario and customer adding funds from Savings account to Trading account scenario.
Top comments (0)