Twister Testing Configuration Documentation and Operation

Windows 11, VSCode, NCS v2.3.0

https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/develop/test/twister.html

I am reading through documentation and attempting to operate Twister to run tests.

I have been able to build a test, but it doesn't seem to run.

twister -c -vv -T ./tests/GPS/ -p qemu_x86
...
INFO    - 1 of 1 test configurations passed (100.00%), 0 failed, 0 skipped with 0 warnings in 14.54 seconds
INFO    - In total 1 test cases were executed, 0 skipped on 1 out of total 520 platforms (0.19%)
...
INFO    - 0 test configurations executed on platforms, 1 test configurations were only built.

"0 test configurations executed on platforms" -- why?

My test's testcase.yaml:

tests:
  lib.gps:
    build_only: false
    platform_allow: qemu_x86 native_posix
    integration_platforms:
      - qemu_x86
      - native_posix
    tags: testing

I don't really understand the configuration, though.  The documentation doesn't explain the configuration parameters.

I see no difference between build_only: true and build_only: false.

How do I get my test to actually run, not build, but run, on qemu_x86?

Further, where can I find documentation on the meaning and operation of:

  • integration_platform
  • harness (I see console get used in some examples, what is that?  how do I use it?  when do I use it?  etc)

Also, I see the output of twister is a set of xunit output files.  What are those supposed to be used for?  Is there an application that consumes them and displays or otherwise consults them for my benefit?  What is that application?  Does it come with Zephyr/NCS or needs to be acquired separately?

I am having many problems getting this working and it's because I can't find any documentation explaining it.

Thanks.

Related