Test plan for "Create child epic from epic"
Test Plan
Introduction
GitLab currently provides the ability to create epics, and to attach an existing epic to another existing epic, establishing the parent-child relationship between them.
The purpose of the issue that this test plan addresses is to create a parent-child relationship all in one UI interaction.
This test plan is related to #7331 (closed).
Scope
Functional
- It should be possible to create an epic and a child epic in the same graphical user interface.
- When the child epic is created it should be in the same group as its parent epic.
- It should be possible to create child epics with a maximum depth of 5.
- When the parent epic of a child epic is deleted, the child epic is not deleted, and it becomes an epic without a parent.
Security
- Guests should only be able to view group epics.
- Reporter, Developer, Maintainer, and Owner should be able to create/edit group epic.
- Only the Owner should be able to delete a group epic.
ACC Matrix
Attributes (columns) are adverbs or adjectives that describe (at a high level) the qualities testing is meant to ensure Components have.
Components (rows) are nouns that define major parts of the product being tested.
Capabilities link Attributes and Components. They are what your product needs to do to make sure a Component fulfills an Attribute
For more information see the Google Testing Blog article about the 10 minute test plan and this wiki page from an open-source tool that implements the ACC model.
Secure | Functional | |
---|---|---|
Epics | 3 | |
Groups | 3 |
Capabilities
Groups, Epics, and child epics
-
Group epic is
- Secure
- Guests should only be able to view group epics.
- Reporter, Developer, Maintainer, and Owner should be able to create/edit group epic.
- Only the Owner should be able to delete a group epic.
- Secure
-
Child epic
- Functional
- Child epic should be correctly created based on its parent.
- Maximum depth of 5 child epics should be allowed.
- Child epic should become an epic without parent when its parent is deleted.
- Functional
Test cases
Before each scenario
- Create a parent epic
- Create a child epic based on the parent
Scenario 01
- The child epic should be correctly created as a child of its parent
Scenario 02
- Create a child epic based on the previous child epic
- Repeat the previous step until you reach the maximum depth of 5 child epics
- Try to create a new child epic based on the latest child in the tree
- It should not be possible to create more than 5 levels of depth of epics
Scenario 03
- Delete the parent epic of the child epic
- The child epic should not be deleted
- The child epic should become an epic without a parent
Scenario 04
- Check that Guests are only able to view group epics, but not able to create/edit/delete
Scenario 05
- As a Reporter, edit the group epic
- Check that the group epic was correctly edited
- Repeat the above steps with a Developer user, a Maintainer user, and an Owner user
Scenario 06
- As an Owner user delete the group epic
- Check that the group epic was correctly deleted
Here are some examples of GUI tests for epics: https://gitlab.com/gitlab-org/gitlab-ee/tree/master/qa/qa/specs/features/browser_ui/2_plan/ee_epic
When adding new automated tests, please keep testing levels in mind