Stéphane Raimbault 52a5f1afe0 Rewrite new unit test for invalid function code 9 rokov pred
..
LICENSE 11459f2868 Update license for the tests in Debian packaging (#221) 11 rokov pred
Makefile.am 2c2fc6d63a Rewrite and rename README as README.md in tests/ 9 rokov pred
README.md 2c2fc6d63a Rewrite and rename README as README.md in tests/ 9 rokov pred
bandwidth-client.c 09807f1419 Introduce SPDX license identifiers 10 rokov pred
bandwidth-server-many-up.c f43066a157 Fix CID 69140 - Bad bit shift operation (coverity) in tests 9 rokov pred
bandwidth-server-one.c 09807f1419 Introduce SPDX license identifiers 10 rokov pred
random-test-client.c a5bfc75652 Fix address range in random-test-client 9 rokov pred
random-test-server.c 09807f1419 Introduce SPDX license identifiers 10 rokov pred
unit-test-client.c 52a5f1afe0 Rewrite new unit test for invalid function code 9 rokov pred
unit-test-server.c 902c28730a Fix typo in 3053bd0adb 9 rokov pred
unit-test.h.in 79c1bd3dac Use new modbus_mapping_new_start_address in unit tests 9 rokov pred
unit-tests.sh 2fb7c2eb53 Wait the server for 1 second before running tests 10 rokov pred
version.c 09807f1419 Introduce SPDX license identifiers 10 rokov pred

README.md

License

Test programs of this directory are provided under BSD license (see associated LICENSE file).

Compilation

After installation, you can use pkg-config to compile these tests. For example, to compile random-test-server run:

gcc random-test-server.c -o random-test-server pkg-config --libs --cflags libmodbus

  • random-test-server is necessary to launch a server before running random-test-client. By default, it receives and replies to Modbus query on the localhost and port 1502.

  • random-test-client sends many different queries to a large range of addresses and values to test the communication between the client and the server.

  • unit-test-server and unit-test-client run a full unit test suite. These programs are essential to test the Modbus protocol implementation and libmodbus behavior.

  • bandwidth-server-one, bandwidth-server-many-up and bandwidth-client return very useful information about the performance of transfert rate between the server and the client. bandwidth-server-one can only handles one connection at once with a client whereas bandwidth-server-many-up opens a connection for each new clients (with a limit).