A:
Monkey testing is random testing performed by automated testing tools (after the automated testing tools are developed by humans).
The automated testing tools are considered "monkeys", if they work at random.
We call them "monkeys" because it is widely believed that,
if we allow six monkeys to pound on six typewriters at random for a million years,
they will recreate all the works of Isaac Asimov.
There are "smart monkeys" and "dumb monkeys".
"Smart monkeys" are valuable for load and stress testing;
they will find a significant number of bugs, but are also very expensive to develop.
"Dumb monkeys", on the other hand, are inexpensive to develop, are able to do some basic testing,
but they will find few bugs.
However, the bugs that "dumb monkeys" find will be hangs and crashes,
i.e. the bugs you least want to have in your software product.
"Monkey testing" can be valuable, but it should not be your only testing.