Added descriptions of what the fuzzer is and does.

Signed-off-by: Mark Kampe <mark.kampe@dreamhost.com>
This commit is contained in:
Mark Kampe 2011-12-22 13:04:30 -08:00
parent a6227f8acc
commit d69a33cc35
2 changed files with 31 additions and 0 deletions

View file

@ -1,3 +1,21 @@
#
# FUZZ testing uses a probabalistic grammar to generate
# pseudo-random requests which will be sent to a server
# over long periods of time, with the goal of turning up
# garbage-input and buffer-overflow sensitivities.
#
# Each state ...
# generates/chooses contents for variables
# chooses a next state (from a weighted set of options)
#
# A terminal state is one from which there are no successors,
# at which point a message is generated (from the variables)
# and sent to the server.
#
# The test program doesn't actually know (or care) what
# response should be returned ... since the goal is to
# crash the server.
#
start: start:
set: set:
garbage: garbage:

View file

@ -1,3 +1,16 @@
"""
Unit-test suite for the S3 fuzzer
The fuzzer is a grammar-based random S3 operation generator
that produces random operation sequences in an effort to
crash the server. This unit-test suite does not test
S3 servers, but rather the fuzzer infrastructure.
It works by running the fuzzer off of a simple grammar,
and checking the producted requests to ensure that they
include the expected sorts of operations in the expected
proportions.
"""
import sys import sys
import itertools import itertools
import nose import nose