Sunday, May 02, 2010

What is Monkey Testing and its types

Few days back I come across an interesting term “Monkey Testing”, some people prefer to call it as “stochastic testing” a more technical word used to refer this type of testing.
The name 'monkey' comes from an old traditional saying that is accepted by many as true or partially true that ‘a thousand monkeys at a thousand typewriters will eventually type out the entire works of Shakespeare’.

Monkey Testing
In software testing world we (Testers) when talk about monkey testing referring to a fully automated testing tool. In fact this type of testing fall in the category of automated testing and black-box testing, the word monkey is used to refer a fully automated testing tool.

There are different types of monkey testing
i. Dumb Monkey Testing
ii. Semi Smart Monkey Testing
iii. Brilliant or Smart Monkey Testing

Dumb Monkey Testing
In Dumb Monkey Testing, dumb monkey do not know anything about the application, here the inputs are generated from a uniform probability distribution or Infinite Monkey Theorem. You can run these tests the whole day or even for more time. A dumb monkey, with its continuous repetition, can expose bugs such as memory leaks that might not occur until many hours or days of normal use.
For Example, using Quick Test Professional (QTP)you want to check for memory leak, what you need to do is just run a loop with thousands of values and leave it for hours (well its very fast, it adds the records in seconds), it will enter same records according to the loop (if duplication check is not applied).

Semi Smart Monkey Testing
We can make our dumb monkeys as semi smart by adding some functionality to them.
For Example, if I am talking about QTP we can write some script for a specific project according to its needs, lets say if you want to add many employees using automated tools you can make a table, enter all the different values to the table and import that table in the script of QTP it will work and add different values one by one and generate a report about all the values in the table and tells that with this value test passed and with this value test fails specifically.

Brilliant Monkey Testing
It works and uses software like a user can even more quickly. You can program it as you want like where to start and then where to click then where to go, enter data and submit the form so on and where to stop, so its very SMART :), Great. You just need to program it. Most of the commercially available load and stress testing tools depend on this smart monkey technology.

Good Paper on Monkey Testing
Beautiful Article on Monkey Testing


  1. Very informative post. This is more useful for my software testing workshop.

  2. I recently came across your blog and have been reading along. I thought I would leave my first comment.
    I don't know what to say except that I have enjoyed reading. Nice blog. I will keep visiting this blog very often.
    Thank You
    PowerBuilder development company

  3. Nice Post about PowerBuilder programming. Thanks for sharing this information .

  4. Hello, I am a recruitment consultant and want to connect with the software testing professionals in and around Islamabad, hence would appreciate if you could email me at

  5. This comment has been removed by the author.

  6. A Complete QA Blog