Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

software testing

What is error guessing?

Muhammad Ashir

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

Error guessing makes use of the knowledge gained by previous testing in order to make educated guesses about the defects that may exist in a system. It requires skill, intuition, and experience in testing to detect errors using error guessing.

The efficacy of error guessing depends entirely on the testers and their skill, because it does not have any formal parameters or guidelines that can be followed.

Advantages

  • Reliable approach for detecting problems in the code-base that cannot be found using formal methods of testing.

  • Highly effective when used in conjunction with other formal methods of software testing.

  • Very effective in finding bugs that would otherwise take a long time to be disclosed using formal methods of testing.

Disadvantages

  • A lot of the advantages of error guessing rely on the tester’s skill and experience. Since it is not a process-based mechanism, it is unreliable.

  • May not cover all test cases.

  • Gives no qualitative metric for determining code quality.

RELATED TAGS

software testing

CONTRIBUTOR

Muhammad Ashir
Copyright ©2022 Educative, Inc. All rights reserved

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

Keep Exploring