What is monkey testing?

Monkey testing: Breaking the system

Monkey testing is a software testing technique where random inputs are applied to the system with the sole purpose of crashing/breaking the system. There is no pre-defined testing methodology or carefully designed test cases.

The idea behind monkey testing is that there may be reckless users who could provide large or inconsistent inputs, leading to a system crash. Therefore, the tester views the system from the user’s point of view, applies all possible inputs they can think of, and find the bugs that could break the system. Monkey testing is mainly used when there is a lack of time and resources.

Advantages

  • Testers can discover new kinds of bugs, as they think from the user’s perspective and have full authority to test the system according to their own understanding.
  • Monkey testing can be performed without skilled testers.
  • Requires fewer resources and time, which saves time and cost.
  • Easy to execute the tests, as generating random data does not demand any complexity.

Disadvantages

  • Bugs may not be reproducible, as tests are performed with random data.
  • Tests are less accurate due to the random nature of the tests.
  • Not suitable for projects with strict functional requirements as there are no designed test cases.
  • Susceptible to human errors. Since monkey testing relies on the understanding and mood of the tester, monkey testing on its own is not a suitable testing method.

Types of monkey testing

Monkey testing can be classified into the following types:

  • Dumb monkey: Tester has no idea about the internal functioning of the system. Here, the tester cannot provide any guarantees about the accuracy of the test cases.

  • Smart monkey: Tester has a deep knowledge of the internal functioning of the system. The tester verifies both valid and invalid input to the system.

  • Brilliant monkey: Tester performs the testing from the user’s point of view and is able to provide probability occurrences of bugs.

Copyright ©2024 Educative, Inc. All rights reserved