Add universal QA checks and improve confirmation guidance in test plan template (#41613)
## Summary Updates the test plan template to include a set of optional, reusable testing sections that help ensure broader and more consistent test coverage across features. New sections: - Core flow - UI - API - GitOps - Permissions - Edge cases - Supplemental testing The goal is to make it easier for teams to reliably consider these areas without requiring every issue to manually outline them. ## Core flow ownership The **Core flow** section represents the original test plan content that Product typically outlined for a user story. It captures the primary feature behavior and expected functionality that must work for the story to be considered complete. This section is owned by **Product** and should describe the main user flow and expected outcomes, similar to how the test plan was previously documented. ## Edge case ownership The **Edge cases** section is owned by **QA**, or shared between QA and Product when Product wants QA to validate specific scenarios. This helps ensure that less obvious scenarios (invalid inputs, boundary conditions, missing configuration, etc.) are explicitly considered rather than overlooked. ## Optional sections Sections such as UI, API, GitOps, and Permissions are intentionally designed to be **optional**. They can be removed when they are not applicable to the feature being implemented. These sections act as reminders for areas that frequently require validation in Fleet. ## Confirmation improvements The **Confirmation** section has also been expanded to encourage engineers to include any special setup or test data used during development. Providing this context helps QA reproduce the setup faster and reduces time spent recreating test environments. --------- Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
This commit is contained in:
co-authored by
Noah Talerman
parent
ba2c5b5e5c
commit
700370a298
@@ -63,15 +63,55 @@ It is [planned and ready](https://fleetdm.com/handbook/company/development-group
|
||||
|
||||
### Test plan
|
||||
<!-- Add detailed manual testing steps for all affected user roles. -->
|
||||
|
||||
> Make sure to go through [the list](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/ui/design-qa-considerations.md) and consider all events that might be related to this story, so we catch edge cases earlier.
|
||||
>
|
||||
<!-- The following sections can be removed if they are inapplicable for this User Story -->
|
||||
|
||||
#### Core flow
|
||||
<!-- Product TODO -->
|
||||
- TODO
|
||||
- TODO
|
||||
- TODO
|
||||
|
||||
#### UI
|
||||
- [ ] Verify that all UI changes specified in the Figma wireframes are correctly implemented
|
||||
- [ ] Verify expected UI states (loading, empty, error states if applicable)
|
||||
|
||||
#### API
|
||||
- [ ] Test all API endpoints added or modified in the **API changes** section of this issue
|
||||
- [ ] Verify error handling for invalid inputs where applicable
|
||||
|
||||
#### GitOps (generate + run)
|
||||
- [ ] Configure the feature through the UI and run `fleetctl generate-gitops`
|
||||
- [ ] Confirm the generated `.yml` includes the expected fields (compare with YAML changes in the Product section)
|
||||
- [ ] Modify the generated `.yml` and run `fleetctl gitops`
|
||||
- [ ] Confirm the configuration updates correctly in Fleet
|
||||
- [ ] Enable GitOps mode and verify the feature behaves correctly
|
||||
|
||||
#### Permissions
|
||||
<!-- Consider: Do the steps above apply to all global access roles, including admin, maintainer, observer, observer+, and GitOps? Do the steps above apply to all fleet-level access roles? If not, write the steps used to test each variation.
|
||||
-->
|
||||
- [ ] Verify role restrictions are applied correctly for **global roles**
|
||||
- [ ] Verify role restrictions are applied correctly for **fleet-level roles**
|
||||
|
||||
#### Edge cases
|
||||
|
||||
<!-- QA TODO: Replace the TODO below with relevant edge cases or remove this section if not applicable -->
|
||||
|
||||
<!-- Edge case examples:
|
||||
1. Invalid or unexpected input values
|
||||
2. Boundary conditions
|
||||
3. Behavior when required configuration is missing
|
||||
4. Behavior when related objects are deleted or modified
|
||||
-->
|
||||
|
||||
- TODO
|
||||
- TODO
|
||||
- TODO
|
||||
|
||||
#### Supplemental testing
|
||||
|
||||
<!-- Mid-cycle testing checks. Added by QA after the issue was moved to Awaiting QA -->
|
||||
|
||||
### Testing notes
|
||||
<!-- Any additional testing notes relevant to this story or tools required for testing. -->
|
||||
@@ -79,5 +119,5 @@ It is [planned and ready](https://fleetdm.com/handbook/company/development-group
|
||||
### Confirmation
|
||||
<!-- The engineer responsible for implementing this user story completes the test plan before moving to the "Awaiting QA" column. -->
|
||||
|
||||
1. [ ] Engineer: Added comment to user story confirming successful completion of test plan.
|
||||
1. [ ] Engineer: Added comment to user story confirming successful completion of test plan (include any special setup, test data, or configuration used during development/testing if applicable).
|
||||
2. [ ] QA: Added comment to user story confirming successful completion of test plan.
|
||||
|
||||
Reference in New Issue
Block a user