nodejs / nodejs.org

The Node.js® Website
https://nodejs.org
MIT License
6.13k stars 6.21k forks source link

Switch from Jest to Node.js's Native Test Runner #6123

Open ovflowd opened 10 months ago

ovflowd commented 10 months ago

This issue about moving away from Jest to Node.js's Native Test Runner

Why

It would be great if we adopted Node.js's Test Runner (and moved away from Jest) because:

Migration

ovflowd commented 10 months ago

This issue is open to grabs by anyone interested :)

AugustinMauroy commented 10 months ago

Hey ! I'm trying to work on this but I got a problem. It's because node doesn't found ts file. So should we build ts before test ?

ovflowd commented 10 months ago

Hey ! I'm trying to work on this but I got a problem. It's because node doesn't found ts file. So should we build ts before test ?

No. You want to use node --loader=ts-node/esm

Node.js supports custom loaders. (You need to add ts-node as a dev dependency btw)

ovflowd commented 10 months ago

Or if you also need react compatibility. You might want to use the tsx loader (also a package)

AugustinMauroy commented 10 months ago

hummm interessing

MrHBS commented 10 months ago

Have you considered ditching JSDOM + RTL in favor of Cypress/Playwright Component Testing?

ovflowd commented 10 months ago

Have you considered ditching JSDOM + RTL in favor of Cypress/Playwright Component Testing?

We already have Visual Regression Testing. The only tests we have for Components at the moment are for specific states.

And no, we dont want yet another tool and library and platform. Thank you.

ovflowd commented 10 months ago

To clarify, our testing of components here is really bare bones, just to certify that for example, a select actually renders said items.

Adding browser testing (even if headless) is overkill for our needs.

So pretty much Node.js itself provides everything we need here with its native test runner; + we only want to unit test utilities, helpers, hooks and certain components that are stateful.

Everything else is already covered by Chromatic + Storybook

araujogui commented 9 months ago

@AugustinMauroy are you still working on this?

AugustinMauroy commented 9 months ago

@araujogui I'm stuck in my pr with the dom. If you want you can commit on my pr it is in "allow edit by maintainer" so in theory you could commit. It's up to you to finish it 😁

etroynov commented 8 months ago

@AugustinMauroy can you share the link on PR?

bmuenzenmeyer commented 8 months ago

its linked above https://github.com/nodejs/nodejs.org/pull/6129

AugustinMauroy commented 5 months ago

NEWS:

akdsco commented 5 months ago

I would like to contribute (first time to this repo, Hello 👋🏻), but I can't see the PR @AugustinMauroy. Can you share the link so maybe I can run it locally and potentially review it to start familiarising myself with the code?

AugustinMauroy commented 5 months ago

I didn't make any pr for moment. But you can try on this branch any feedback is welcome