How tests can be made for Simba OS applications? There are following potential ways:
-
Using Simba OS testing framework
This is most desirable way, because tested code can use Simba functionality, including threads, queues, etc. However, I can’t figure out how to build native code with
framework = simba
under Platformio. There’s noframework
andboard
fornative
platform.Tested application can be built with Simba build system, but it requires supporting two build systems and I had problems with setting up Simba build system, it does not work out of the box and requires lots of
#define
/#include
debugging. -
Using Platformio tests
Less desirable way, because it requires to make your code not dependent on Simba. Even if device-specific things can be relatively easily abstracted away, you can’t use threads, sync primitives and you have to target both Simba and libc for things like exact number of bytes-types and string manipulation. It’s too hard.
-
Running tests on MCU
Test code can be run on MCU, probably with Platformio testing system, but that has lots of issues. I would prefer native tests, however on-device tests might be the preferred way for some projects.
Any ideas?