Unit testing coreboot - status update after one year

Main Stage,

In May 2020, initial support for unit testing the coreboot landed in the tree - it was included in the 4.12 release. During talk on the OSFC2020 we described why firmware (and especially coreboot) benefits from the unit testing and how unit testing framework in coreboot is working from the background.

In almost every area of programming new frameworks aren't something stable from the beginning - the same applies for unit testing frameworks. In parallel with writing tests for new modules new challenges arise. Almost every new test brings in the need for improving the testing framework and infrastructure. Once starting this journey we weren't sure where it would end and how difficult it may be to test such low-level code as coreboot firmware.

We want to go through what the community achieved during the previous year and whether all goals were reached. What is the current test coverage and how test coverage statistics reports work. Furthermore, what were the new features and improvements introduced into the unit testing framework. Finally, how the new libpayload test framework will look like and how the new mock architecture is working.