MetaMask / MetaMask/metamask-extension
Come up with a way to detect if someone is not using the POM pattern in e2e tests and notify them.
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
What is this about?
As part of the Engineering Technical sync the following question was asked:
Is there a way to detect if someone is adding an e2e test that isn't using POM and should be?
This issue is a place holder for us to think about and discuss possibilities here.
Scenario
No response
Design
Potential approaches:
- QA should write possible reusable functions to make them easily adaptable by developers.
- When performing code reviews, check that the POM design pattern has been followed and implemented and this could be included in the review checklist.
- Encourage peer programming sessions for individuals who have not followed or need help following the pattern.
- Promote team wise training sessions and walkthroughs with clear expectations for writing test scenarios.
- Implement linting rules to enforce coding standards, with custom rules to detect deviations from the POM pattern, and integrate these as CI checks to flag tests that do not follow the POM pattern.
Technical Details
No response
Threat Modeling Framework
No response
Acceptance Criteria
No response
Stakeholder review needed before the work gets merged
- Engineering (needed in most cases)
- Design
- Product
- QA (automation tests are required to pass before merging PRs but not all changes are covered by automation tests - please review if QA is needed beyond automation tests)
- Security
- Legal
- Marketing
- Management (please specify)
- Other (please specify)
References
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are identified in the issue. First clarify whether the expected outcome is a review checklist, training, reusable helpers, or linting and CI enforcement; define acceptance criteria and the relevant e2e test locations before implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100