# # Ethereal/Tethereal Regression Testing # # $Id: README.regression,v 1.1 2000/05/12 05:47:00 gram Exp $ # # This is a sample Makefile for regression testing of the # Ethereal engine. These tests use that uses 'tethereal -V' to analyze all # the frames of a capture file. # # You should probably rename this file as 'Makefile' in a separate directory # set aside for the sole purpose of regression testing. Two text files will # be created for each capture file you test, so expect to have lots of files. # # Set TETHEREAL, CAPTURE_DIR, and CAPTURE_FILES to values appropriate for # your system. Run 'make' to create the initial datasets. Type 'make accept' # to accept those files as the reference set. # # After you make changes to Tethereal, run 'make regress'. This will re-run # the tests and compare them against the accepted reference set of data. # The comparison, which is just an invocation of 'diff -u' for the output # of each trace file, will be put into a file called 'regress'. Examine # this file for any changes that you did or did not expect. # # If you have introduced a change to Tethereal that shows up in the tests, but # it is a valid change, run 'make accept' to accept those new data as your # reference set. # # Commands: # # 'make' Creates tests # 'make regress' Checks tests against accepted reference test results # Report is put in file 'regress' # 'make accept' Accept current tests; make them the reference test results # 'make clean' Cleans any tests (but not references!) TETHEREAL=/home/gram/prj/ethereal/debug/linux-ix86/tethereal CAPTURE_DIR=/home/gram/prj/sniff CAPTURE_FILES=\ dhcp-g.tr1 \ genbroad.snoop \ ipv6-ripng.gz \ ipx.pcap \ pcmjh03.tr1 \ strange.iptrace \ teardrop.toshiba.gz \ zlip-1.pcap \ zlip-2.pcap \ zlip-3.pcap ######################################## No need to modify below this line TESTS = $(CAPTURE_FILES:=.tether) REFERENCES = $(TESTS:.tether=.ref) all: $(TESTS) clean: rm -f $(TESTS) %.tether : $(CAPTURE_DIR)/% $(TETHEREAL) -V -n -r $< > $@ accept: $(REFERENCES) %.ref : %.tether cp $< $@ regress: $(TETHEREAL) $(TESTS) @echo "Regression Report" > regress @date >> regress @echo "BOF------------------------------------" >> regress @for file in $(CAPTURE_FILES); do \ echo Checking regression of $$file ; \ diff -u $${file}.ref $${file}.tether >> regress ; \ done @echo "EOF------------------------------------" >> regress