What is manual testing? It’s a part of software development, but what exactly is it? Find out in this article.
What Is Manual Testing
Manual testing is the process of testing software for defects using manual tests. Testing in general is done to find defects in software before it is released. The manual component means that it is done manually by the testers, as opposed to automated testing, which is where you get another tool to run your testing.
This manual process requires the person running the tests (the tester) to pretend they are the end user. They should be able to interact with the solution, provide all kinds of data to it, and perform the tests that would be performed by an end user.
This kind of testing is long, rigorous, and usually quite thorough, depending on what tests have been created. However, software testing is an important part of the process and manual testing will most likely need to be done as part of it.
The manual tester should be using most of the features, even those which are not expected to be used often by the end users. They should be following the test cases, which are the steps to perform a test (more on that later).
What Are The Types Of Manual Testing?
So, we’ve had a look at what manual testing is. Now let’s see what types of manual testing there are.
There are quite a few different types, each of which test a different area of the solution and are executed at a different stage. These types of tests are:
- Unit testing – testing individual code modules or areas of code to ensure they perform correctly.
- System testing – testing the entire system that has been created to ensure that it all works together as intended.
- Integration testing – testing the system against other systems that interface with it, to ensure that everything else that is linked still works.
- User acceptance testing – involving the end users and getting them to perform tests to ensure they are happy with how the system is developed
- Release testing – testing after the code has been released to ensure that there were no issues during implementation.
What Is Involved In Manual Testing?
There are a few steps involved in the manual testing process. They are common across all types of tests mentioned above. It doesn’t matter if you’re doing release testing or system testing, you should be following a similar structure when setting up and executing your tests.
These steps are:
- Create a test plan. A test plan is a high-level document that dictates what kind of tests will be run, the method that is being chosen, and what resources will be involved (such as teams or systems). It also explains what output is generated from the test phases.
- Write test cases. The test cases detail the steps taken to test various functionality within the system. These will change depending on the type of manual testing that is being done. For example, user acceptance testing will be worded a lot differently, and testing different areas, than unit testing.
- Assign test cases to testers. The test cases that are written will be assigned to the resources identified, which are the testers. It will be their job to execute these test cases using the data that is provided, and generate the output.
- Create a test report. The test report is created by the test team, and demonstrates what was performed during the manual testing phase. It includes what test cases were done, what kind of testing was run, and what the results were.
All kinds of manual testing should follow this process. The actual details included in each of these steps would be different for each type, but the overall structure should be the same.
Manual Testing vs. Automated Testing?
Automated testing is where we use a tool to execute all of the test cases that we have prepared. It runs against a system and provides an output based on what you have told it to do.
So, why would we ever use manual testing when we could run automated testing? I wondered that myself. There are a few reasons:
- Manual testing picks up visual elements that automated testing doesn’t
- Manual testing needs to be done for user acceptance testing, as it’s an actual person that does this
- Not all companies have the budget for an automated testing tool, as many of them cost money and time to implement
That just about sums up what manual testing is all about. I hope it answers your questions about the process. Do you have any questions on manual testing? Leave them in the comments section below!