Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

relation between random testing and fuzz testing

I am wondering what the relation between random and fuzz testing is. I understand that random testing has been there for a longer time, but I cannot see any differences between them. They both seem to make use of random input to see if the program goes into an unexpected state (i.e. crash). Is the main difference difference that fuzz testing is automated?

like image 683
Martin Jü Avatar asked Mar 07 '23 21:03

Martin Jü


1 Answers

Random(ized) testing has no intention of crashing a system. You can randomize valid values. The goals could be to increase coverage or to find out new/unexpected information about the system (possibly bugs, but could be simply unknown behaviour).

Fuzz(y) testing is about sending complete rubbish (e.g. could be random bytes instead of HTTP request) into the system and see whether it can handle it gracefully (not crash or hang). The data is not necessarily random - it's just meaningless to the software.

like image 151
Stanislav Bashkyrtsev Avatar answered Mar 23 '23 00:03

Stanislav Bashkyrtsev