Closed jainvikas8 closed 4 years ago
This isn't a problem that can be solved by Mbed OS and its tests. TF-M and PSA Compliance tests will need to either be compatible with each other (and tested that they remain compatible with each other), or we need to erase between test runs. Until the tests are compatible with each other, which doesn't seem like anything valuable to do for either TF-M or PSA Compliance tests, we should erase between runs.
This isn't a problem that can be solved by Mbed OS and its tests. TF-M and PSA Compliance tests will need to either be compatible with each other (and tested that they remain compatible with each other), or we need to erase between test runs. Until the tests are compatible with each other, which doesn't seem like anything valuable to do for either TF-M or PSA Compliance tests, we should erase between runs.
This may involve further changes to scripts that build the target (PR for Mbed OS), but how do we differentiate whether its a test suite run or release? (User would not be happy if the release build erased it's previous ITS storage)
We should test what we release. If this involves using a physical target and erasing its flash, that's what it'll take.
We don't ship the regression test config binaries, though. We should probably invest some time in determining how best to test the release-config binaries. It's a bit annoying that TF-M regression tests can't be used with release binaries. This is a separate issue, though.
When using the Mbed OS + TF-M v1.1 for ARM_MUSCA_B1 or using
test_psa_target.py
we see some ITS test failures.The way to reproduce is as follows: Step 1: Clear ITS area with pyocd
pyocd erase --help
ITS - 0xA1F0000 to 0xA1FC000 for ARM_MUSCA_B1 Step 2: Compile and run TF-M 1.1v regression tests. (PASSED) - Re-run, without re-flashing, it will still pass. Step 3: Compile and run PSA Compliance - ITS suite (failed for one test)The problem with this flow of execution is:
Now let's change the flow Step 1: Clear ITS area Step 2: Compile and run PSA Compliance - ITS suite (PASSED) -- Re-run, without re-flashing, it will still pass. Step 3: Compile and run TF-M 1.1v regression tests. (Number of failed tests: 8 of 19)
The problem with this flow of execution is:
One may argue to run these test suites we need to start clean (erase ITS), but that reduces the lifetime of flash.
Questions: