You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As an Embedded Developer, I want to create a new CMSIS solution from a supported software template so that I can quickly start development with a correctly configured project structure, device settings, and build environment.
Workflows
Workflow 1: Create Solution from Device Template
Preconditions
VS Code workspace is open.
CMSIS Solution extension is installed and activated.
CMSIS-Toolbox is available.
Required CMSIS packs are installed or available for download.
At least one supported device is available.
Steps
Open the Create Solution wizard from the CMSIS extension.
Select a target device.
Select a CMSIS software template.
Choose a project location.
Configure the compiler/toolchain.
Complete the wizard and generate the solution.
Open the generated solution.
Build the solution.
Expected Results
The Create Solution wizard completes successfully.
Solution files are generated in the selected location.
A valid .csolution.yml file is created.
The solution is automatically discovered by the CMSIS Explorer.
Build completes successfully without configuration errors.
Postconditions
A new CMSIS solution exists in the workspace.
Generated configuration files are valid.
The solution is ready for further configuration, build, and debug operations.
E2E Automation Status
✅ Target for the initial implementation.
Can be automated using the existing Playwright VS Code test framework.
Provides the highest coverage with the lowest dependency on external hardware.
Represents the smallest useful e2e test that delivers value and can realistically be implemented first. for Issue Expand E2E Test Coverage #81.
Workflow 2: Create Solution from Board Template
Preconditions
VS Code workspace is open.
CMSIS Solution extension is installed and activated.
CMSIS-Toolbox is available.
Required CMSIS packs are installed or available for download.
At least one supported board is available.
Steps
Open the Create Solution wizard.
Select a target board.
Select a compatible CMSIS software template.
Choose a project location.
Configure the compiler/toolchain.
Generate the solution.
Open the generated solution.
Build the solution.
Expected Results
Board selection succeeds.
Compatible templates are displayed.
Solution files are generated successfully.
CMSIS Explorer displays the generated solution and contexts.
Build completes successfully.
Postconditions
A new board-based CMSIS solution exists.
Generated files contain valid board and device configuration.
The solution is ready for development.
E2E Automation Status
🟡 Feasible.
Recommended after Workflow 1 is stable.
Requires a board/template combination with deterministic pack availability.
May require additional CI setup depending on board-specific dependencies.
Workflow 3: Handle Missing Required Pack
Preconditions
VS Code workspace is open.
CMSIS Solution extension is installed.
Selected template requires a pack that is not currently installed.
Steps
Open the Create Solution wizard.
Select a device or board.
Select a template that requires a missing pack.
Continue solution creation.
Expected Results
The extension detects the missing pack dependency.
The user is informed about the missing pack.
Appropriate guidance or installation options are presented.
Solution generation does not proceed with an invalid configuration.
Postconditions
No invalid solution is generated.
User receives actionable feedback to resolve the dependency issue.
E2E Automation Status
🟡 Feasible with additional infrastructure.
Requires control over pack availability (offline environment, mocked repository, or intentionally missing pack).
Not recommended for the initial e2e implementation.
Better suited as a follow-up negative-path test.
Workflow 4: Handle Missing Compiler
Preconditions
VS Code workspace is open.
CMSIS Solution extension is installed.
No supported compiler/toolchain is configured.
Steps
Open the Create Solution wizard.
Select a device or board.
Select a template.
Proceed to compiler/toolchain configuration.
Attempt to finish solution creation.
Expected Results
The extension detects that the required compiler is unavailable.
A clear validation message is displayed.
The user is prevented from completing creation with an invalid configuration.
Postconditions
No invalid solution is created.
User receives guidance on configuring a supported compiler.
E2E Automation Status
🟡 Feasible with additional infrastructure.
Requires a test environment without a configured compiler or with compiler discovery intentionally disabled.
Not recommended for the initial e2e implementation.
This is the primary onboarding workflow for the CMSIS Solution extension and provides the foundation for all subsequent workflows such as solution management, component configuration, build, load/run, and debugging.
Initial E2E Scope
The initial implementation should focus on Workflow 1: Create Solution from Device Template and validate:
Create Solution wizard can be launched.
Device selection works.
Template selection works.
Solution files are generated successfully.
Generated .csolution.yml is valid.
CMSIS Explorer discovers the generated solution.
Build validation may be included if the required toolchain is available in the CI environment.
[E2E] Create CMSIS Solution from Template
User Goal
As an Embedded Developer, I want to create a new CMSIS solution from a supported software template so that I can quickly start development with a correctly configured project structure, device settings, and build environment.
Workflows
Workflow 1: Create Solution from Device Template
Preconditions
Steps
Expected Results
.csolution.ymlfile is created.Postconditions
E2E Automation Status
Workflow 2: Create Solution from Board Template
Preconditions
Steps
Expected Results
Postconditions
E2E Automation Status
Workflow 3: Handle Missing Required Pack
Preconditions
Steps
Expected Results
Postconditions
E2E Automation Status
Workflow 4: Handle Missing Compiler
Preconditions
Steps
Expected Results
Postconditions
E2E Automation Status
Related Requirements / Issues
Priority
Notes (Optional)
This is the primary onboarding workflow for the CMSIS Solution extension and provides the foundation for all subsequent workflows such as solution management, component configuration, build, load/run, and debugging.
Initial E2E Scope
The initial implementation should focus on Workflow 1: Create Solution from Device Template and validate:
.csolution.ymlis valid.Build validation may be included if the required toolchain is available in the CI environment.
Future E2E Coverage