nnf-integration-test
An NNF integration test meant to be run against a live, already-installed, rabbit system.
This is meant to be used as a submodule of nnf-deploy so that it is built against the same version of the code that has been deployed to the live rabbit system.
Testing
NNF test infrastructure and individualized tests reside in the /internal directory. Tests are expected to run against a fully deployed cluster reachable via your current k8s configuration context. NNF test uses the Ginkgo test framework.
Various Ginkgo options can be passed into go test. Common options include -ginkgo.fail-fast, -ginkgo.show-node-events, and -ginkgo.v
go test -v ./test/... -ginkgo.fail-fast -ginkgo.v
Ginkgo also provides the Ginkgo CLI that can be used for enhanced test features like parallelization, randomization, and filter.
Test Definitions
Individual tests are listed in /int_test.go. Tests are written from the perspective of a workload manager and should operate only on DWS resources when possible.
Test Options
Test Options allow the user extend test definitions with various options. Administrative controls, like creating NNF Storage Profiles or NNF Container profiles, configuring a global Lustre File System, or extracting Lustre parameters from a persistent Lustre instance, are some example test options.