Functional tests

Tests are located in the src/ska_low_sps_testsuite/functional_tests directory and are executed using one of three methods.

These hardware tests were developed primarily as a regression test suite for the TPM FPGA Firmware. Though they also double as a way to verify a hardware setup against a known good firmware and software. These tests verify that once configured the hardware is operating as expected and this includes all of the many science data products produced by the TPM.

Hardware Test Descriptions

Below is an overview of each of the self checking hardware tests:

Creating New Hardware Tests

Classes created in the /functional_tests/tests directory beginning with test_ are automatically imported by the test_wrapper script once added to the test_wrapper file’s self.tests dictionary.

Running Test Multiple Times

If you want to run the tests multiple times usually there is a test parameter to change the number of iterations. If this doesn’t exist or you want to reinitialize between tests then the test_wrapper (src/ska_low_sps_testsuite/functional_tests/test_wrapper.py) has an iterations argument in the execute function.

If you want to reinitialize between iterations then you have to change init_between_iterations to True manually.

Work will be done in the future to expose these options to the 3 interfaces (Pytest, Cabinet Test GUI and Interactive terminal).

Note: The test_wrapper for the Cabinet Test GUI is actually: src/ska_low_sps_testsuite/cabinet_test_gui/gui_ctrl.py