This repository contains the Checkbox Kivu Provider (Kivu-specific test cases and test plans for Checkbox) as well as everything that is required to build the checkbox-kivu-classic snap in the snapstore.
Located in the checkbox-provider-kivu
directory, it contains:
units
directory)bin
directory)data
directory)tests
directory)Install the Checkbox runtime and the Kivu provider snaps:
sudo snap install checkbox22
sudo snap install checkbox-kivu-classic --classic
Make sure that the provider service is running and active:
systemctl status snap.checkbox-kivu-classic.remote-slave.service
Some test need dependencies, so in order to run all tests, you might way to install those dependencies. A helper script is available to install them:
checkbox-kivu-classic.install-full-deps
To run the full test plan:
checkbox-kivu-classic.test-runner-automated
To run the hardware decoding tests:
checkbox-kivu-classic.test-runner-automated-hwdec
Interactive run allows you to select test plan and specific tests to run.
checkbox.checkbox-cli remote 127.0.0.1
You will be presented with a long list of available test plans. You can filter this out using the /
key to search for Kivu
. Select the Kivu test plan, and follow the instructions on \
screen to start the test run.
Since snaps are immutable, it is not possible to modify the content of the scripts or the test cases. Fortunately, Checkbox provides a functionality to side-load a provider on the DUT.
Therefore, if you want to edit a job definition, a script or a test plan, run the following commands on the DUT:
cd $HOME
git clone git@github.com:canonical/checkbox-kivu.git
mkdir /var/tmp/checkbox-providers
cp -r $HOME/checkbox-kivu/checkbox-provider-kivu /var/tmp/checkbox-providers/
You can then modify the content of the provider in /var/tmp/checkbox-providers/checkbox-provider-kivu/
, and it's this version that will be used when you run the tests.
Please refer to the Checkbox documentation on side-loading providers for more information.