MetaMask / MetaMask/metamask-extension
Migrate from `mocha-junit-reporter` to a json reporter
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
### What is this about?
We do not need to use XML anymore, because we are not on CircleCI. If we migrated to a json reporter, the test results would be more readable, and we wouldn't need the overly-complicated XML parsing logic (and the extra dependency that comes with it)
We should make sure that the new test reporter supports retries, as the current one does not. This would result in a more accurate test report, as earlier attempts would be recorded. Currently, if a test fails on the first try, and it is retried, only the second attempt will show up. So a test might be flaky and one would never know, because it's not reported.
### Scenario
_No response_
### Design
_No response_
### Technical Details
_No response_
### Threat Modeling Framework
_No response_
### Acceptance Criteria
_No response_
### Stakeholder review needed before the work gets merged
- [x] Engineering (needed in most cases)
- [ ] Design
- [ ] Product
- [x] 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
Research direction
Locate the mocha-junit-reporter configuration, the XML parsing logic, and the dependency declarations; then identify the test-reporting entry point and available JSON reporters. Confirm that the replacement records every retry attempt and remove the obsolete XML path and dependency, with the test suite and generated report providing the completion check.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- testing-qa
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100