Test Plan - Incident Response v0.6 + 7
Document version 1.0
Status: Test Completed
Document Version | Description | Date |
---|---|---|
0.0 | Initial version | 08/07 |
0.1 | Added tests for v0.7. Added test steps for the test cases. Test plan ready for review. | 08/16 |
1.0 | Tests updated. Tests run and completed | 08/21 |
References
Related Tests:
Summary
This document details the tests for Incident Response plugin v0.6.0. The tests are derived from the user stories in the requirements for v0.6. The MVP of the Incident Response plugin will be tested against the relevant tests included in this test plan if the feature is included.
Scope
This document covers the cases for the user stories as outlined in the Incident Response MVP Overview for v.0.6.0 of the plugin only.
Glossary
Admin - A user with system administrator privileges.
Normal user - A user with non-system administrator privileges.
Test Server - A list of test server versions used in testing including Mattermost server and Marketplace Server
Main menu - Hamburger menu on the LHS.
Incident Response icon - The Incident Response plugin icon that appears on the channel header
Commander - The user who owns an incident. The user who starts the incident is designated the commander by default.
Incident member/incident channel member - A user who has been added to the incident channel.
Non-incident user - A user who has not been added to the incident channel.
Active incident - An incident that has not been ended.
Ongoing incident - Same as Active Incident.
Inactive incident - An incident that has been ended.
Incident RHS - The RHS sidebar that opens upon clicking the incident response icon and displays incidents.
Incident Backstage - The backstage view that shows the incident list.
Playbook Backstage - The backstage view that shows the playbook list.
Assumptions
The tests in this test plans are written with the assumption that:
The tests outlined in this document is to be executed against the Incident Response plugin v0.6.0.
This version of the plugin can be installed and used in Mattermost instances that aren’t equipped with any enterprise license.
The Incident Response plugin can function as a standalone plugin that does not require to talk to any other Mattermost plugin.
This version of the Incident Response plugin will function properly only in the latest version of Mattermost.
The tests will be executed in the latest version of Mattermost.
Testing is primarily done on browser (Chrome), with spot checks on other web browsers, desktop app, RN mobile app and mobile web browser app.
The tests in this document are executed as a normal user (see glossary above) unless otherwise specified in the tests.
The test cases that pass for a normal user will also pass for a system administrator.
Plugin uploads is enabled in server instance
“EnableUploads” option under “PluginSettings” in mattermost-server’s config.json is set to 'true'.
The channel export feature defined in the user story is dependent on the existence of the Channel Export plugin being installed and enabled in the test server.
Private channels cannot be converted into public channel, hence private incidents cannot be converted to public incidents.
Setup
Document Setup
For the practicality of running tests easily, test cases are arranged in sequential order when necessary, following the preceding test case.
Test Setup
The following setup will be necessary in order to begin testing:
A Mattermost test server running the latest version.
The test server may not need to be equipped with an EE license.
Incident Plugin v0.6.
Channel Export Plugin v0.2
Test Server: https://ir-test.test.mattermost.cloud/
Test Server (upgrade tests): https://ir-upgrade-test.test.mattermost.cloud/
Build Hash: fb453d
EE Build Hash: 7251aa
Webapp Build Hash: d0bcba
Incident Response plugin version: v0.6.0-alpha.3 (build hash d60f2f)
Test Date: 08/21/2020
Tests
Test Area - Plugin Setup | ||||
---|---|---|---|---|
Test ID | Test Case | Test Steps | Result | Notes |
1 | Admin can install plugin in a non-EE instance |
| Pass |
|
2 | Admin can install plugin in an E10 instance |
| Pass |
|
3 | Admin can install plugin in an E20 instance |
| Pass |
|
4 | Admin can enable plugin |
| Pass |
|
5 | Plugin functionality is available to admin |
| Pass |
|
6 | Plugin functionality is available to normal user |
| Pass |
|
7 | Admin can disable plugin |
| Pass |
|
8 | Admin can remove plugin |
| Pass |
|
9 | Plugin upgrades normally from v0.4 to v0.6 |
| Pass |
|
10 | Plugin upgrades normally from v0.5 to v0.6 |
| Pass |
|
11 | Incidents started with the prior plugin versions are still active and available in v0.6 |
| Pass |
|
12 | Incidents ended with prior plugin versions are not available in v0.6 |
| Pass |
|
13 | Playbook started with the older plugin version is still available upon plugin upgrade |
| Pass |
|
Test Area - Create stages when editing a playbook | ||||
---|---|---|---|---|
Test ID | Test Case | Test Steps | Result | Notes |
14 | Playbook creator can edit playbook |
| Pass |
|
15 | Any playbook member can edit playbook to add a new member | Continue from the above test.
| Pass |
|
16 | Any playbook member can edit playbook to remove an existing member | Continue from the above test.
| Pass |
|
17 | A playbook member cannot edit playbook to remove all the members of the playbook | Continue from the above test.
| Pass | The “Save Playbook” button should stay inactive unless there is at least one member |
18 | Any playbook member can edit playbook to change the private/public incident setting | Continue from the above test.
| Pass |
|
19 | Any playbook member can edit playbook to add a new stage | Continue from the above test.
| Pass |
|
20 | A playbook can have multiple stages with the same stage name |
| Pass | Valid? @Ian Tao (Unlicensed) confirm? |
21 | A playbook member can edit playbook to add a new checklist item to a stage added by themself | Continue from the above test.
| Pass |
|
22 | Any playbook member can edit playbook to add a new checklist item to a stage added by a different member | Continue from the above test.
| Pass |
|
23 | A playbook member cannot edit playbook such that the playbook name field is empty | Continue from the above test.
| Pass |
|
24 | Any playbook member can reorder the checklist items within a stage | Continue from the above test.
| Pass |
|
25 | Any playbook member can reorder the checklist items within different stages | Continue from the above test.
| Pass | Cannot be reordered under a different stage without a step: |
26 | A playbook member cannot reorder the playbook such that the checklist items can be pulled outside a stage | Continue from the above test.
| Pass |
|
27 | Any playbook member can delete a checklist item | Continue from the above test.
| Pass |
|
28 | A playbook member can edit the playbook to delete all the checklist items such that all the stages can have no checklist item at all | Continue from the above test.
| N/A | Invalid. |
29 | Any playbook member can reorder the stages | Continue from the above test.
| Pass |
|
30 | A playbook member cannot reorder the playbook such that the stages can be nested | Continue from the above test.
| Pass | Verify that the stages cannot be stacked inside another stage
Step 5: The dragged item gets dropped below (not inside) whatever stage item it was dragged into. |
31 | Any playbook member can delete a stage | Continue from the above test.
| Pass |
|
32 | A playbook member cannot delete the last remaining stage such that the playbook has no stages at all | Continue from the above test.
| Fail | |
33 | Any playbook member can delete playbook |