When I did QA (about 40 years ago) I got some useful results by feeding unexpected/garbage values to every parameter of a complicated command... or threatening to: the tests were being developed in parallel with the code, so I would sit in meetings and say: and now I feed THIS param THAT value (which might be subtly out of range, or absolute gibberish) and the expected response is?
The dev response in the meeting was sometimes "Oops. Let me get back to you."
Requirement defs matter.
