Open
Description
About
GH-280 only demonstrates basic usage of CrateDB test layer variants. On a subsequent iteration, we may want to demonstrate how to parameterize them.
Requirements
The minimum set of parameters needed to cover common use cases in software testing.
- Software version of CrateDB (GA release, testing, nightly).
- TCP ports (HTTP and PG) CrateDB should be listening on.
- Heap size used by CrateDB,
CRATE_HEAP_SIZE
. - Path to its data directory when aiming to expose it.
As an outlook...
cr8
's test layer is also capable of running clusters of multiple nodes, right? That is probably happening somewhere in crate-qa already? It should also be demonstrated in this context here.
References
Those are pointers to where parameterization is used, and not demonstrated here, yet.
- native/pytest:
CrateLayer
acceptssettings
, see pytest_crate/plugin.py. - native/unittest: Dito, see crash::tests/test_integration.py.
- testcontainers/pytest: @pilosus added parameterization capabilities to
cratedb-toolkit
'sCrateDBTestAdapter
: Use testcontainers to improve platform coverage crash#408. Thanks. - testcontainers/unittest: Dito.