This repo contains a tester that runs tests using the python3 programming language.
If installed with the classic backend the following are required:
- python3.7+
- if more than one version of python3.7+ is installed and in the
server_user
's PATH then all versions will be made available to run tests
- if more than one version of python3.7+ is installed and in the
There are no additional requirements if installed with other backend types.
Testers should always be installed by the autotest backend. From the autotest backend files, run:
python3 manage.py --help
to see how to install testers.
There are no additional configuration options required.
When creating an environment to run tests, users can choose the following configuration options that are specific to this tester:
- python version: which version of python3.7+ will be used to run the tests (this may be limited when installed in some backends)
- test runner: either
pytest
orunittest
- output verbosity: indicates the verbosity level of the test output (see the documentation for each test runner for details)
- script files: indicates which files should be targeted by the test runner when running tests
- category: labels a test environment as belonging to a specific category. When tests are run in this environment, only test environments that share the same category as the requested test will be run.
- timeout: time (in seconds) allocated to complete all tests in this environment. If tests take longer to run then a timeout error will be reported.
- feedback files: the name of feedback files generated by running the tests that will be made available to the autotest api for retrieval.
- plugins: a set of options to enable/disable plugins (depends on which ones are installed, see the documentation for each plugin for more details)
- data entries: a set of data entries installed by the backend. Selecting a data entry from this list will make it available when running tests (see the backend documentation for information on how the entries are made available)
- extra_info: a hash containing extra information about this test environment, this information is not used by the backend to configure tests but is reported back in the test results.