Skip to content

Commit 5980b03

Browse files
committed
e2e: updating PR pipeline
1 parent e2b9e12 commit 5980b03

File tree

1 file changed

+39
-10
lines changed

1 file changed

+39
-10
lines changed

doc/pipeline_process.md

+39-10
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[Pipeline for QA](https://github.com/status-im/status-mobile/projects/7) is a project board for developers and testers used to track the status of a pull request, get reviews and manual testing, and run autotests.
44

5-
The generally accepted recommendations for its use are described below:
5+
The generally accepted requirements for its use are described below:
66

77
## Opening a PR
88
- Once a PR is created, it moves to the ```REVIEW``` column where a review will be requested automatically.
@@ -13,31 +13,60 @@ The generally accepted recommendations for its use are described below:
1313
### What if the work is still in progress?
1414

1515
- If PR work is not finished yet, please mark it as a draft or add [WIP] to the title and keep it in the `CONTRIBUTOR` column until it's ready to be reviewed/tested.
16+
- Alternatively, you can open a `draft`.
1617

18+
### When is a PR considered ready to move forward?
1719

18-
### When is a PR considered to be Ready for testing by QA team? 


19-
Ready for testing PR should meet the following criteria:
20+
Ready for testing, a PR should meet the following criteria:
2021

21-
1. Reviewed and has at least 1 approval
22-
2. Rebased to `develop` branch (both `status-mobile` and `status-go` if needed, depending on what part has changes)
23-
3. All possible conflicts have been resolved
24-
4. Has the label: `request-manual-qa`
22+
1. Reviewed and has at least 1 approval.
23+
2. Rebased to the `develop` branch (both `status-mobile` and `status-go` if needed, depending on what part has changes).
24+
- **NOTE:** QAs can use the `Update with rebase` button from GitHub in case if:
25+
- The PR has no `status-go` changes.
26+
- The PR has no conflict with the develop branch.
27+
3. All possible conflicts have been resolved.
28+
4. Has the label: `request-manual-qa` or `skip-manual-qa`.
29+
5. PRs **MUST** identify what area is affected and should have a description.
2530

31+
**NOTE:** Make sure that QAs are OK with that
32+
33+
### Adding `skip-manual-qa`
34+
35+
- Please ask another team member before adding the `skip-manual-qa` label (or here in chat) so that there's a second opinion.
36+
- The PR should have a proper reasoning why manual QA is skipped.
37+
- The PR should include the steps of testing that has been done by the developer prior to moving it forward.
2638
**From the perspective of a developer it means that once work on PR is finished:**
2739

2840
1. It should be rebased to the latest `develop`. If there are conflicts - they should be resolved if possible.
2941
2. If the PR was in the `Contributor` column - it should be moved to `Review` column.
3042
3. Wait for the review.
3143
4. Make sure that after review and before requesting manual QA your PR is rebased to current develop.
32-
5. Once the PR has been approved by reviewer(s) - label `request-manual-qa` should be applied to the PR
33-
6. Move PR to the E2E column when it is ready for testing (**mandatory for all PRs**). That will also trigger e2e tests run. QAs are monitoring PRs from E2E column and take it into test.
44+
6. **MUST:** Move PR to the E2E column when it is ready for testing (**mandatory for all PRs**). That will also trigger e2e tests run. QAs are monitoring PRs from E2E column and take it into test.
3445

3546
After that - PR will be taken into manual testing by the QA team.
3647

48+
### E2E tests and analyzing the results
49+
50+
This step cannot be skipped. So, at least one comment from the `status-im-auto` bot with results is a prerequisite for moving forward.
51+
Information on how to analyze tests can be found [here](https://github.com/status-im/status-mobile/blob/develop/doc/how-to-launch-e2e.md).
52+
Tests might be flaky, as they depend on infrastructure - SauceLabs and Waku.
53+
54+
If there are `Failed tests` and you are not sure about the reason, you can always ping the mobile QAs for help (preferably in PRs).
55+
56+
**For now, it is the only reliable source of regression in the app because, due to time constraints, it is not possible to test thoroughly each PR.
57+
Please, respect this rule.**
58+
3759
## Testing PR
3860

3961
### Manual testing
40-
- If you think PR needs and is ready for manual testing, please add the ```request-manual-qa``` label.
62+
#### Prerequisites for manual testing
63+
1. PR has a description and the area affected.
64+
2. PR has automation results from the previous step.
65+
3. PR includes a demo, test steps, and possible regression.
66+
67+
**If one of the prerequisites is missing, the PR will be moved to the contributor folder with a corresponding comment.**
68+
69+
- If you think a PR needs and is ready for manual testing, please add the `request-manual-qa` label.
4170
- QA engineer picks up one of PRs with the ```request-manual-qa``` label, drags the item to the ```IN TESTING``` column and assigns it to themselves.
4271
- During testing, QA will add comments describing the issues found, and also review automation tests results.
4372
Usually found issues are numbered as "Issue 1, Issue 2", etc.

0 commit comments

Comments
 (0)