DEV Community

Selvakumar S
Selvakumar S

Posted on • Edited on

An Overview of Manual Testing

Manual testing is a software testing process in which a developed software is tested on its specific evaluations of a feature, function, or performance—are executed without using any automated tools.
Any deviation from the expected behavior is considered as a defect in the software.

Objective

The main objective of manual testing is to detect the issues, bugs, and defects of a software application.

Types

Image description

1. Black box Testing

Methods in which the functionalities of a software applications are tested without having knowledge of internal code structure, implementation details and internal paths.

  • Functional Testing

A type of testing that seeks to establish whether each application feature works as per the software requirements.

Image description

  • Non-Functional Testing

A type of software testing that verifies non functional aspects of the product, such as performance, stability, and usability.

Image description

2. White Box Testing

White box testing is a form of application testing that provides the tester with complete knowledge of the application being tested, including access to source code and design documents.

Image description

  1. Gray Box Testing

In gray box testing, the tester is not required to design test cases. Instead, test cases are created based on algorithms that evaluate internal states, program behavior, and application architecture knowledge.

Image description

Advantages of Manual Testing

  1. No Environment Limitations

  2. Programming Knowledge is not required.

  3. Recommendable for Dynamically changing GUI designs.

  4. Recommendable for Usability Testing.

  5. Manual testing allows for human observation, which may be more
    useful to find potential defects.

  6. Uses human intelligence to find errors.

  7. It helps to maintain a testable system

Disadvantages of Manual Testing

  1. Manual Testing requires more time or more resources, sometimes
    both Time and Resources.

  2. Less Accuracy.

  3. Performance testing is impractical in Manual testing.

  4. Comparing a large amount of data is impractical.

  5. Processing change requests during software maintenance takes
    more time.

  6. Batch Testing is possible, but for each test execution, Human
    user interaction is mandatory.

  7. GUI Objects Size difference and Color combinations etc.. are
    not easy to find in Manual Testing.

  8. Manual Test Case scope is very less, if it is an Automated test
    then the scope is more.

  9. Executing the same tests, again and again, is time taking
    process as well as Tedious.

  10. For every release you must rerun the same set of tests which
    can be tiresome.

💡 One last tip before you go

Tired of spending so much on your side projects? 🤔

We have created a membership program that helps cap your costs so you can build and experiment for less. And we currently have early-bird pricing which makes it an even better value! 🐥

Check out DEV++

Top comments (0)