wireshark/test
Guy Harris eaa4a7022b file-pcapng: redo the way we dissect the data in blocks.
Create a tvbuff that covers the data portion of a block, and use that to
dissect all data in the block, including but not limited to the options.

Catch ReportedBoundsError exceptions and treat them as an indication
that the block length was too short - add an expert info to the block
length item indicating that.

Have separate routines for each block type that dissects the data in
that block type.

While we're at it, check whether the trailing block length is equal to
the  header block length and, if not, report an error in the trailing
block length.

Fix the tests to match.
2021-06-04 16:46:40 -07:00
..
baseline Qt: Copy->Value - don't zero pad hex values 2021-03-11 07:17:58 +00:00
captures ieee80211: Support decrypting Fast BSS Transition with roaming 2021-03-16 14:36:26 +00:00
config dot11decrypt: Add partial FT-EAP decryption support 2021-01-20 16:10:12 +00:00
keys Add support for RSA decryption using PKCS #11 tokens 2018-12-29 10:40:16 +00:00
lua Lua: add DissectorTable.try_heuristics() function 2021-03-26 07:15:16 +00:00
protobuf_lang_files Protobuf: fix bugs that parsing complex syntax .proto files 2020-12-27 11:32:10 +00:00
suite_dfilter Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_dissectors Qt: Copy->Value - don't zero pad hex values 2021-03-11 07:17:58 +00:00
README.test Qt: Add a packet diagram view. 2020-08-10 18:17:50 +00:00
conftest.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
fixtures.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
fixtures_ws.py tests: skip plugin count test if feature is disabled 2021-02-26 15:57:10 +00:00
hosts.custom
hosts.global
hosts.personal
matchers.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
sampleif.py test: fix sampleif.py on weird systems using Python 3.6 and older 2019-04-16 03:28:43 +00:00
subprocesstest.py tests: Add argument to trim output to a reasonable size 2021-02-04 17:00:36 +00:00
suite_capture.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_clopts.py tests: skip plugin count test if feature is disabled 2021-02-26 15:57:10 +00:00
suite_decryption.py test: add missing raw string regex identifier. 2021-03-25 08:16:10 +00:00
suite_dissection.py Protobuf: fix bugs that parsing complex syntax .proto files 2020-12-27 11:32:10 +00:00
suite_extcaps.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_fileformats.py file-pcapng: redo the way we dissect the data in blocks. 2021-06-04 16:46:40 -07:00
suite_follow.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_follow_dccp.py Replaced large NetPerfMeter captures by one small capture. 2021-03-04 20:27:24 +01:00
suite_io.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_mergecap.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_nameres.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_netperfmeter.py SCTP: Display basic TSN information with packets 2021-06-04 08:04:31 +00:00
suite_outputformats.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_release.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_sharkd.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_text2pcap.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_unittests.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
suite_wslua.py Lua: add DissectorTable.try_heuristics() function 2021-03-26 07:15:16 +00:00
test.py Tools+test: Call python3 explicitly. 2020-11-05 06:46:35 +00:00
travis-upload-artifacts.sh test,travis: dump a screenshot for hanging GUI tests 2019-01-24 00:26:22 +00:00
util_dump_dhcp_pcap.py Dumpcap+Qt: Add support for `-a packets:NUM` and `-b packets:NUM`. 2018-11-09 05:55:11 +00:00

README.test

Wireshark Tests

The recommended steps to prepare for and to run tests:

* Install two Python packages, pytest: `pip install pytest pytest-xdist`
* Build programs (“wireshark”, “tshark”, etc.): `ninja`
* Build additional programs for the “unittests” suite: `ninja test-programs`
* Run tests in the build directory: `pytest`

Replace `ninja test-programs` by `make test-programs` as needed.

See the “Wireshark Tests” chapter of the Developer's Guide for details:
https://www.wireshark.org/docs/wsdg_html_chunked/ChapterTests.html

If you need to update the baseline files use the following commands (on a Linux system)
mkdir ~/.config/wireshark/profiles/ctest
TZ=UTC WIRESHARK_RUN_FROM_BUILD_DIRECTORY=1 build/run/tshark -C ctest -T ek -r test/captures/dhcp.pcap > test/baseline/dhcp.ek
TZ=UTC WIRESHARK_RUN_FROM_BUILD_DIRECTORY=1 build/run/tshark -C ctest -T json -r test/captures/dhcp.pcap > test/baseline/dhcp.json
TZ=UTC WIRESHARK_RUN_FROM_BUILD_DIRECTORY=1 build/run/tshark -C ctest -T jsonraw -r test/captures/dhcp.pcap > test/baseline/dhcp.jsonraw
TZ=UTC WIRESHARK_RUN_FROM_BUILD_DIRECTORY=1 build/run/tshark -C ctest -T ek -r test/captures/dhcp.pcap -x > test/baseline/dhcp-raw.ek