I have a test system with lots of boards attached for running tests. When something fails, I need to examine the verbose output to see what's going on, e.g.
pio test -e f722z -f test_spi -v
This works fine, but there is a lot of output from other board tests, marked as SKIPPED. Perhaps these can be filtered out, since the -e flag selects specific board(s)? (either by default, or with a new cmdline flag)
Example of output follows:
$ pio test -e f722z -f test_spi -v
Collected 4 tests (test_gpio, test_i2c, test_spi, test_uart)
Processing test_spi in f722z environment
-------------------------------------------------------------------------------------
Building & Uploading...
2026-03-25T11:40:31 INFO common.c: STM32F72x_F73x: 256 KiB SRAM, 512 KiB flash in at least 2 KiB pages.
2026-03-25T11:40:31 INFO common_flash.c: Attempting to write 12088 (0x2f38) bytes to stm32 address: 134217728 (0x8000000)
EraseFlash - Sector:0x0 Size:0x4000 2026-03-25T11:40:31 INFO flash_loader.c: Starting Flash write for F2/F4/F7/L4
2026-03-25T11:40:31 INFO flash_loader.c: Successfully loaded flash loader in sram
2026-03-25T11:40:31 INFO flash_loader.c: Clear DFSR
2026-03-25T11:40:31 INFO flash_loader.c: enabling 32-bit flash writes
2026-03-25T11:40:32 INFO common_flash.c: Starting verification of write complete
2026-03-25T11:40:32 INFO common_flash.c: Flash written and verified! jolly good!
2026-03-25T11:40:32 INFO common.c: Go to Thumb mode
Testing...
If you don't see any output for the first 10 secs, please reset board (press reset button)
f722z: STM32F722 @ 216 MHz (v7.0.4-77-g4daac161)
main.cpp:28:TEST:smoke
reset 2
main.cpp:28:PASS:smoke:
test_spi/tests.h:27:TEST:spi mem (Gpio)
test_spi/tests.h:10:PASS:spi mem (Gpio):
000: ffffffff ffffffff ffffffff ffff .... .... .... ..
test_spi/tests.h:21:FAIL:spi mem (Gpio):strcmp(buf, "there!") == 0
test_spi/tests.h:34:TEST:spi mem (Poll)
test_spi/tests.h:10:PASS:spi mem (Poll):
000: ffffffff ffffffff ffffffff ffff .... .... .... ..
test_spi/tests.h:21:FAIL:spi mem (Poll):strcmp(buf, "there!") == 0
test_spi/tests.h:41:TEST:spi mem (Sync)
test_spi/tests.h:10:PASS:spi mem (Sync):
f722z: STM32F722 @ 216 MHz (v7.0.4-77-g4daac161)
main.cpp:28:TEST:smoke
reset 0
main.cpp:23:FAIL:+:QUIT
=====> 0 tests (0 skipped), checks: 1 FAILED <=====
--------------------- f722z:test_spi [FAILED] Took 9.67 seconds ---------------------
====================================== SUMMARY ======================================
Environment Test Status Duration
------------- --------- -------- ------------
f103r test_gpio SKIPPED
f103r test_uart SKIPPED
f103r test_i2c SKIPPED
f103r test_spi SKIPPED
f302r test_gpio SKIPPED
f302r test_uart SKIPPED
f302r test_i2c SKIPPED
f302r test_spi SKIPPED
f303k test_gpio SKIPPED
f303k test_uart SKIPPED
f303k test_i2c SKIPPED
f303k test_spi SKIPPED
f334r test_gpio SKIPPED
f334r test_uart SKIPPED
f334r test_i2c SKIPPED
f334r test_spi SKIPPED
f401r test_gpio SKIPPED
f401r test_uart SKIPPED
f401r test_i2c SKIPPED
f401r test_spi SKIPPED
f411r test_gpio SKIPPED
f411r test_uart SKIPPED
f411r test_i2c SKIPPED
f411r test_spi SKIPPED
f412d test_gpio SKIPPED
f412d test_uart SKIPPED
f412d test_i2c SKIPPED
f412d test_spi SKIPPED
f439z test_gpio SKIPPED
f439z test_uart SKIPPED
f439z test_i2c SKIPPED
f439z test_spi SKIPPED
f722z test_gpio SKIPPED
f722z test_uart SKIPPED
f722z test_i2c SKIPPED
f722z test_spi FAILED 00:00:09.666
f723d test_gpio SKIPPED
f723d test_uart SKIPPED
f723d test_i2c SKIPPED
f723d test_spi SKIPPED
f750d test_gpio SKIPPED
f750d test_uart SKIPPED
f750d test_i2c SKIPPED
f750d test_spi SKIPPED
f767z test_gpio SKIPPED
f767z test_uart SKIPPED
f767z test_i2c SKIPPED
f767z test_spi SKIPPED
g071r test_gpio SKIPPED
g071r test_uart SKIPPED
g071r test_i2c SKIPPED
g071r test_spi SKIPPED
g431k test_gpio SKIPPED
g431k test_uart SKIPPED
g431k test_i2c SKIPPED
g431k test_spi SKIPPED
g474r test_gpio SKIPPED
g474r test_uart SKIPPED
g474r test_i2c SKIPPED
g474r test_spi SKIPPED
h743z test_gpio SKIPPED
h743z test_uart SKIPPED
h743z test_i2c SKIPPED
h743z test_spi SKIPPED
l053r test_gpio SKIPPED
l053r test_uart SKIPPED
l053r test_i2c SKIPPED
l053r test_spi SKIPPED
l412r test_gpio SKIPPED
l412r test_uart SKIPPED
l412r test_i2c SKIPPED
l412r test_spi SKIPPED
l432k test_gpio SKIPPED
l432k test_uart SKIPPED
l432k test_i2c SKIPPED
l432k test_spi SKIPPED
l433r test_gpio SKIPPED
l433r test_uart SKIPPED
l433r test_i2c SKIPPED
l433r test_spi SKIPPED
l476r test_gpio SKIPPED
l476r test_uart SKIPPED
l476r test_i2c SKIPPED
l476r test_spi SKIPPED
l496d test_gpio SKIPPED
l496d test_uart SKIPPED
l496d test_i2c SKIPPED
l496d test_spi SKIPPED
g431r test_gpio SKIPPED
g431r test_uart SKIPPED
g431r test_i2c SKIPPED
g431r test_spi SKIPPED
wl55r test_gpio SKIPPED
wl55r test_uart SKIPPED
wl55r test_i2c SKIPPED
wl55r test_spi SKIPPED
__________________________________ f722z:test_spi __________________________________
test_spi/tests.h:21:FAIL:spi mem (Gpio):strcmp(buf, "there!") == 0
test_spi/tests.h:21:FAIL:spi mem (Poll):strcmp(buf, "there!") == 0
main.cpp:23:FAIL:+:QUIT
================ 7 test cases: 3 failed, 4 succeeded in 00:00:09.666 ================
$
I have a test system with lots of boards attached for running tests. When something fails, I need to examine the verbose output to see what's going on, e.g.
This works fine, but there is a lot of output from other board tests, marked as SKIPPED. Perhaps these can be filtered out, since the
-eflag selects specific board(s)? (either by default, or with a new cmdline flag)Example of output follows: