I’d like to be able to invoke tests easier - searching through the project tasks for the ‘advanced>test’ option when there are a lot of target environments is a pain every time I make a small change and want to re-run the tests
Is there any way to add a shortcut? - ideally like the ‘build’ button on the status bar
The toolbar is sadly non-modifyable from a user perspective, it needs adaptions in the extension code.
In fact, there once was a “Test” button, but people said it consumed too much space, so it was removed (PlatformIO Toolbar: "PlatformIO: Test” icon · Issue #2226 · platformio/platformio-vscode-ide · GitHub) at their request.
The quickest way is via the command pallete now. Ctrl+Shift+P → Test → Enter.
Thanks for the reply, I guessed that might be the case
I guess I’m spoilt coming from visual studio that has a ‘test explorer’ view that has more features, like selecting individual tests to run
Another thought - could invoking the tests be part of a defined ‘workflow’ - i.e. a process that runs build then test (then maybe git commit if it all passes)
Regards
David
Yes, this is supported via the custom target API as documented in Custom Targets — PlatformIO latest documentation.
In platformio.ini
add
extra_scripts = add_test_task.py
and add_test_task.py
as
Import("env")
env.AddCustomTarget(
name="buildtest",
dependencies=None,
actions=[
"pio run -e $PIOENV",
"pio test -e $PIOENV",
],
title="Build & Test",
description="Builds code and runs unit tests"
)
Should make a custom task appear in the project tasks.
1 Like