There are some characteristics that make fuzzing extremely useful for security testing. Here is why:
Fuzzing is an almost completely automated testing approach.
Fuzzing can be used for black-box AND white-box testing (on the source code).
Fuzzing does not only detect the vulnerabilities but also provides you with the dynamic inputs that caused the error messages.
Fuzzing identifies bugs reliably without false positives.