Convert tests from Jest to Vitest or node-test
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Refactor
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- node.js, react, typescript
Research direction
Start by reviewing the linked Node.js and Open edX Paragon pull requests, then follow the discussion to determine whether Vitest or node:test will be used. Convert test folders in stages while supporting both runners, remove Jest once migration is complete, and share the resulting learnings with other MFEs.
Written by the indexing model from the issue text.
Description
Node's built-in test runner which has been stable since Node 20, has most of the same features as Jest, runs tests faster, supports ESM, and doesn't take up any space nor add any dependencies, unlike Jest which is quite bloated - 512 dependencies and 68 MB disk just for jest@30.0.5.
This PR https://github.com/nodejs/nodejs.org/pull/7623 is a good example of what such a conversion looks like and shows things like how to setup jsdom with node:test.
This PR shows how to do it in one of our repos: https://github.com/openedx/paragon/pull/4043
Discussion: https://openedx.slack.com/archives/C04BM6YC7A6/p1756171002718889
Steps
- Wait for discussion on https://github.com/openedx/paragon/pull/4043 to see if we'll go with Vitest or node:test
- Update this repo so that some tests can run using Jest and others using a new test runner
- Convert "chunks" of tests from Jest to Vitest/node-test, e.g. pick a folder and convert all the tests in that folder. Repeat.
- Remove Jest
- Share learnings with other MFEs
- Dominant language
- TypeScript
- Stars
- 17
- Forks
- 218
- Avg merge
- 9d 20h
- Merged PRs (30d)
- 20
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.
More from openedx/frontend-app-authoring
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
openedx/frontend-app-authoring#3242 · 2 comments ·
-
a11y bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
openedx/frontend-app-authoring#3241 ·
-
a11y bug
Difficulty 1/5 Under an hour Newbie friendliness 88/100
openedx/frontend-app-authoring#3240 ·
-
a11y bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
openedx/frontend-app-authoring#3239 ·
-
a11y bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
openedx/frontend-app-authoring#3232 ·
All issues in openedx/frontend-app-authoring
Similar issues
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 76/100
-
code-quality refactoring
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
vercel/react-tweet#225 ·