Manual testing in quality assurance is the process of manually testing software to identify defects or bugs. It is done by a human tester who follows a set of test cases to ensure that the software functions as intended and meets the requirements specified in the design. Manual testing can include functional testing, usability testing, and acceptance testing, among others. The goal of manual testing is to identify any issues or bugs in the software before it is released to users so that they can be fixed before the software is deployed.
Can we live without it?
Manual testing can be a necessary aspect of quality assurance (QA) for a couple of reasons:
Manual testing alone may not be sufficient in all situations since, very often, it can be expensive and time consuming. Automated testing, on the other side, also plays an important role in QA by allowing for faster, more efficient testing and increased test coverage. A combination of both is usually an effective approach to ensure software quality.
Let's put automated testing to the side and focus on efficient manual testing. How do we achieve that? There are a couple of processes a tester has to go through, and usually if he doesn't follow one of them, it affects the final product.
Those processes we can group as:
Test planning and design in manual testing refers to the process of creating a plan and designing test cases to be executed manually. This typically includes the following steps:
The overall goal of "test planning and design" is to ensure that all aspects of the software are thoroughly tested and that the testing process is efficient and effective.
Test execution in quality assurance manual testing refers to the process of actually carrying out the test cases that have been designed and planned. It typically includes the following steps:
The overall goal of test execution is to ensure that the software functions correctly and meets the specified requirements and that any defects or issues are identified and reported promptly.
Test reporting and documentation in quality assurance manual testing refers to the process of creating and maintaining documentation related to the testing process. We can separate this process into the following steps:
The overall goal here is to provide a clear and accurate record of the testing process and to communicate the results of the testing process to the relevant parties. This can help the development team and stakeholders to understand the quality of the software and to make informed decisions about the release of the software.
In the context of quality assurance manual testing, defect management refers to the process of identifying, documenting, and tracking issues or defects found during the testing of software applications. This process typically includes the following steps:
The goal of defect management is to ensure that all defects are identified, tracked, and resolved on time to improve the overall quality of the software.
Risk management refers to the process of identifying, assessing, and mitigating potential risks that may impact the testing process or the quality of the software being tested. This process typically includes the following steps:
The goal of risk management in manual testing is to ensure that the testing process proceeds smoothly and that the tested software meets the desired quality standards. By identifying and mitigating potential risks, manual testers can minimize the potential negative impact of those risks on the testing process and the quality of the software.
Exploratory testing is a type of manual testing where the tester actively explores the application, simultaneously learning about it and testing it. The goal of exploratory testing is to find defects and learn more about the application's functionality and usability.
Exploratory testing is an approach that focuses on the tester's involvement and interaction with the software rather than following a pre-scripted testing plan. It allows for a more hands-on approach to testing, where the tester can freely test the software in an unstructured manner and can, therefore, quickly adapt to the changing needs of the testing process. This approach allows the tester to find defects that may be missed by more structured testing methods.
Exploratory testing is most effective when used in conjunction with other testing methods. This way, it can be used to validate and supplement the results of more structured testing methods, such as functional and regression testing.
The core manual testing processes are test planning and design, test execution, test reporting and documentation, defect management, risk management, and exploratory testing.
If we skip even one of the processes during our manual testing, the quality of the software can be drastically affected.