wireshark/test
Peter Wu cbe7f26a86 DTLS: add DSB support, use the key log file from the TLS dissector
The DTLS and TLS dissectors already share code for parsing the key log
file contents but the actual key material was stored separately. As
implementations (like GnuTLS) write the TLS and DTLS secrets to the same
file (specified by the SSLKEYLOGFILE environment variable), it seems
reasonable to combine them.

This also enables use of the pcapng Decryption Secrets Block for
decryption of DTLS traces. The dtls.keylog_file preference has become
obsolete and can no longer be used (this was not tested anyway).

A new test was added based on dtls12-aes128ccm8.pcap, the master secret
was extracted using the tls.debug_file preference.

Bug: 15252
Change-Id: Idfd52c251da966fe111dea37bc3fb143d968f744
Reviewed-on: https://code.wireshark.org/review/31577
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2019-01-17 21:33:25 +00:00
..
baseline test: add suite_outputformats for json output regression testing. 2018-12-26 19:32:47 +00:00
captures DTLS: add DSB support, use the key log file from the TLS dissector 2019-01-17 21:33:25 +00:00
config ssl,http: rename http-over-ssl to http-over-tls 2016-09-04 13:18:54 +00:00
keys Add support for RSA decryption using PKCS #11 tokens 2018-12-29 10:40:16 +00:00
lua test: add tests for Unicode paths in Lua and tshark -G folders 2018-12-29 08:27:58 +00:00
suite_dfilter dfilter: add string() function. 2019-01-14 16:00:29 +00:00
suite_dissectors Unit tests for ASTERIX I048 2019-01-11 18:35:29 +00:00
README.test Test: Remove the Bash test scripts. 2018-05-02 04:09:26 +00:00
conftest.py test: allow running pytest without specifying the tests directory 2019-01-05 06:46:54 +00:00
fixtures.py test: convert capture tests to use fixtures, fix tests without dumpcap 2018-11-16 13:55:28 +00:00
fixtures_ws.py test: assume binaries in $PWD\run\RelWithDebInfo by default 2019-01-04 18:08:04 +00:00
hosts.custom Continue to remove $Id$ from top of file 2014-03-31 18:48:06 +00:00
hosts.global Continue to remove $Id$ from top of file 2014-03-31 18:48:06 +00:00
hosts.personal Continue to remove $Id$ from top of file 2014-03-31 18:48:06 +00:00
matchers.py test: extend sharkd tests to cover all requests 2018-11-21 04:36:20 +00:00
subprocesstest.py test: split SubprocessTestCase.run into setUp/tearDown 2019-01-04 04:58:25 +00:00
suite_capture.py test: fix "DeprecationWarning: invalid escape sequence \(" 2018-11-30 06:11:36 +00:00
suite_clopts.py test: add tests for Unicode paths in Lua and tshark -G folders 2018-12-29 08:27:58 +00:00
suite_decryption.py DTLS: add DSB support, use the key log file from the TLS dissector 2019-01-17 21:33:25 +00:00
suite_dissection.py test: use assertRun instead of runProcess where possible 2018-11-30 06:11:06 +00:00
suite_fileformats.py test: use assertRun instead of runProcess where possible 2018-11-30 06:11:06 +00:00
suite_follow.py test: use assertRun instead of runProcess where possible 2018-11-30 06:11:06 +00:00
suite_io.py test: use assertRun instead of runProcess where possible 2018-11-30 06:11:06 +00:00
suite_mergecap.py test: use assertRun instead of runProcess where possible 2018-11-30 06:11:06 +00:00
suite_nameres.py test: use assertRun instead of runProcess where possible 2018-11-30 06:11:06 +00:00
suite_outputformats.py test: add comment to fixture. 2018-12-27 09:02:09 +00:00
suite_sharkd.py sharkd: use json_dumper for output. 2019-01-07 18:19:12 +00:00
suite_text2pcap.py text2pcap: allow to set interface name 2018-12-13 23:33:32 +00:00
suite_unittests.py test: convert capture tests to use fixtures, fix tests without dumpcap 2018-11-16 13:55:28 +00:00
suite_wslua.py test: add tests for Unicode paths in Lua and tshark -G folders 2018-12-29 08:27:58 +00:00
test.py Test: Look up our encoding name before checking it. 2018-11-27 04:40:47 +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 main testing script is `test.py`. It will attempt to test as much as
possible by default, including packet capture. This means that you will
probably either have to supply a capture interface (`--capture-interface
<interface>`) or disable capture tests (`--disable-capture`). You must
also build the test-programs target in order for the unittests suite to
pass.

To run all tests from CMake do the following:
- Pass `-DTEST_EXTRA_ARGS=--disable-capture` or
  `-DTEST_EXTRA_ARGS=--capture-interface=<interface>`
  as needed for your system.
- Build the “test” target or run ctest, e.g. `ctest --force-new-ctest-process -j 4 --verbose`.

To run all tests directly, run `test.py -p
/path/to/wireshark-build/run-directory <capture args>`.

To see a list of all options, run `test.py -h` or `test.py --help`.

To see a list of all tests, run `test.py -l`.

See the “Wireshark Tests” chapter of the Developer's Guide for details.