- Go distribution
- Specific version depends on minikube version.
- The current dependency version can be found here : master branch’s go.mod file.
- If you are on Linux, you will need to install
libvirt-dev, since unit tests need kvm2 driver:
# For Debian based sudo apt-get install libvirt-dev # For Centos yum install libvirt-devel # For Fedora dnf install libvirt-devel
Unit tests are run on Travis before code is merged. To run as part of a development cycle:
From the minikube root directory, build the binary and run the tests:
You may find it useful to set various options to test only a particular test against a non-default driver. For instance:
env TEST_ARGS="-minikube-start-args=--driver=hyperkit -test.run TestStartStop" make integration
Quickly iterating on a single test
Run a single test on an active cluster:
make integration -e TEST_ARGS="-test.run TestFunctional/parallel/MountCmd --profile=minikube --cleanup=false"
WARNING: For this to work repeatedly, the test must be written so that it cleans up after itself.
--cleanup=false test arg ensures that the cluster will not be deleted after the test is run.
See main_test.go for details.
make integration -e TEST_ARGS="-test.parallel=1"
- Tests should be so simple as to be correct by inspection
- Readers should need to read only the test body to understand the test
- Top-to-bottom readability is more important than code de-duplication
Tests are typically read with a great air of skepticism, because chances are they are being read only when things are broken.
These are Kubernetes tests that run against an arbitrary cluster and exercise a wide range of Kubernetes features. You can run these against minikube by following these steps:
Compile the latest minikube binary
% cd <minikube dir> % make
Trigger the tests and get back the results
% cd <minikube dir> ./hack/conformance_tests.sh out/minikube --driver=docker --container-runtimer=docker --kubernetes-version=stable
This script will run the latest sonobuoy against a minikube cluster with two nodes and the provided parameters.
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.