Tests configuration
Regression tests
Regression test configuration is controlled entirely by TEST_NS
or
TEST_S
or single test suite configuration. The group test
configurations and single test suite configurations are listed below, all of
them are disabled by default.
Parameter |
Description |
---|---|
TEST_NS_ATTESTATION |
Build non-secure regression Attestation tests. |
TEST_NS_T_COSE |
Build non-secure regression t_cose tests. |
TEST_NS_QCBOR |
Build non-secure regression QCBOR tests. |
TEST_NS_CRYPTO |
Build non-secure regression Crypto tests. |
TEST_NS_ITS |
Build non-secure regression ITS tests. |
TEST_NS_PS |
Build non-secure regression PS tests. |
TEST_NS_PLATFORM |
Build non-secure regression Platform tests. |
TEST_NS_FWU |
Build non-secure regression FWU tests. |
TEST_NS_IPC |
Build non-secure regression IPC tests. |
TEST_NS_SLIH_IRQ |
Build non-secure regression Second-Level Interrupt Handling tests. |
TEST_NS_FLIH_IRQ |
Build non-secure regression First-Level Interrupt Handling tests. |
TEST_NS_MULTI_CORE |
Build non-secure regression multi-core tests. |
TEST_S_ATTESTATION |
Build secure regression Attestation tests. |
TEST_S_CRYPTO |
Build secure regression Crypto tests. |
TEST_S_ITS |
Build secure regression ITS tests. |
TEST_S_PS |
Build secure regression PS tests. |
TEST_S_PLATFORM |
Build secure regression Platform tests. |
TEST_S_FWU |
Build secure regression FWU tests. |
TEST_S_IPC |
Build secure regression IPC tests. |
Individual test suites can be enabled when their dependencies like partitions or
other specific configurations are set. On the one hand, some test suites depend
on other test suites. On the other hand, some test suites conflict with
other test suites. Test configurations and dependencies will be
checked in ${TFM_TEST_REPO_PATH}/test/config/check_config.cmake
.
If regression testing is enabled by TEST_NS
or TEST_S
, individual
test suites will be enabled or disabled as appropriate for the TF-M
configuration (i.e. all enabled secure partitions will be tested).
Some cryptographic tests can be enabled and disabled. This is done to prevent false failures from being reported when a smaller Mbed Crypto config is being used which does not support all features.
Parameter |
Description |
Default value |
---|---|---|
TFM_CRYPTO_TEST_ALG_CBC |
Test CBC cryptography mode |
ON |
TFM_CRYPTO_TEST_ALG_CCM |
Test CCM cryptography mode |
ON |
TFM_CRYPTO_TEST_ALG_CFB |
Test CFB cryptography mode |
ON |
TFM_CRYPTO_TEST_ALG_ECB |
Test ECB cryptography mode |
ON |
TFM_CRYPTO_TEST_ALG_CTR |
Test CTR cryptography mode |
ON |
TFM_CRYPTO_TEST_ALG_OFB |
Test OFB cryptography mode |
ON |
TFM_CRYPTO_TEST_ALG_GCM |
Test GCM cryptography mode |
ON |
TFM_CRYPTO_TEST_ALG_SHA_384 |
Test SHA-384 cryptography algorithm |
ON |
TFM_CRYPTO_TEST_ALG_SHA_512 |
Test SHA-512 cryptography algorithm |
ON |
TFM_CRYPTO_TEST_HKDF |
Test HKDF key derivation algorithm |
ON |
TFM_CRYPTO_TEST_ECDH |
Test ECDH key agreement algorithm |
ON |
TFM_CRYPTO_TEST_CHACHA20 |
Test ChaCha20 stream cipher |
ON |
TFM_CRYPTO_TEST_ALG_CHACHA20_POLY1305 |
Test ChaCha20-Poly1305 AEAD algorithm |
ON |
PSA tests
PSA tests are configured by using the TEST_PSA_API
cmake variable. The
variable should be set to the name of the test suite that is desired. It is
_not_ supported to set both TEST_PSA_API
and TEST_S
or TEST_NS
.
- The Functional API tests are:
CRYPTO
INITIAL_ATTESTATION
STORAGE
(INTERNAL_TRUSTED_STORAGE and PROTECTED_STORAGE)INTERNAL_TRUSTED_STORAGE
PROTECTED_STORAGE
- The Firmware Framework test suites are:
IPC
Note that these map directly to the SUITE
cmake variable used in the
psa-arch-tests documentation.