This repository contains:
- interoperability tests for libp2p's transport layers across different implementations and versions
- performance tests for libp2p implementations measured against iperf, https, and quic-go baselines
- hole-punching tests for libp2p implementations that support AutoNAT, Relaying, and DCUtR protocols
The original version of this testing framework can be found in the old test-plans repo. Historically, the testing framework used Testground. That was later re-written in Node and used Docker. This new unified framework uses Bash and Docker to drive tests to work universally on Linux, macOS, and Windows with zero dependency maintenance. The Bash conventions followed in this repo can be found here: docs/bash.md.
The entire test framework is well documented in the docs/ subfolder as well
as in the Bash scripts themselves. If you are wanting to write a test
application that is compatible with this test framework, there are docs on
writing a transport test, perf
test, and hole punch
test.
Dual-licensed: MIT, Apache Software License v2, by way of the Permissive License Stack.