Yes, it is possible from jest@25.4.0
. From this version, there is a native support of esm, so you will not have to transpile your code with babel anymore.
It is not documented yet, but according to this issue you have to do 3 easy steps to achieve that (At the time of writing this answer):
- Make sure you don't transform away
import
statements by setting transform: {}
in your jest config file
- Run
node@^12.16.0 || >=13.2.0
with --experimental-vm-modules
flag
- Run your test with
jest-environment-node
or jest-environment-jsdom-sixteen
.
So your jest config file should contain at least this:
export default {
testEnvironment: 'jest-environment-node',
transform: {}
...
};
And to set --experimental-vm-modules
flag, you will have to run Jest from package.json
as follows (I hope this will change in the future):
"scripts": {
"test": "node --experimental-vm-modules node_modules/jest/bin/jest.js"
}
I hope, this answer was helpful to you.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…