我正在测试使用 jest 构建一个包含 rollup 的包,每当我使用 async/await 时,它就会抛出错误。我不知道出了什么问题。我尝试了不同的灵魂,但它不起作用。
ReferenceError: You are trying to `import` a file after the Jest environment has been torn down.
at loadCjsDefault (node_modules/@babel/core/lib/config/files/module-types.js:77:18)
at loadCjsOrMjsDefault (node_modules/@babel/core/lib/config/files/module-types.js:49:16)
at loadCjsOrMjsDefault.next (<anonymous>)
at readConfigJS (node_modules/@babel/core/lib/config/files/configuration.js:190:47)
at readConfigJS.next (<anonymous>)
ReferenceError: You are trying to `import` a file after the Jest environment has been torn down.
at _parser (node_modules/@babel/core/lib/parser/index.js:9:16)
at parser (node_modules/@babel/core/lib/parser/index.js:54:18)
at parser.next (<anonymous>)
at normalizeFile (node_modules/@babel/core/lib/transformation/normalize-file.js:93:38)
at normalizeFile.next (<anonymous>)
● Cannot log after tests are done. Did you forget to wait for something async in your test?
Attempted to log "TypeError: (0 , _parser(...).parse) is not a function
at parser (D:\projects\js\published\builderz\node_modules\@babel\core\lib\parser\index.js:54:34)
at parser.next (<anonymous>)
at normalizeFile (D:\projects\js\published\builderz\node_modules\@babel\core\lib\transformation\normalize-file.js:93:38)
at normalizeFile.next (<anonymous>)
at run (D:\projects\js\published\builderz\node_modules\@babel\core\lib\transformation\index.js:31:50)
at run.next (<anonymous>)
at Object.transform (D:\projects\js\published\builderz\node_modules\@babel\core\lib\transform.js:27:41)
at transform.next (<anonymous>)
at evaluateSync (D:\projects\js\published\builderz\node_modules\gensync\index.js:244:28)
at Object.sync (D:\projects\js\published\builderz\node_modules\gensync\index.js:84:14) {
code: 'PLUGIN_ERROR',
plugin: 'babel',
hook: 'transform',
id: 'D:\\projects\\js\\published\\builderz\\test\\samples\\pure\\src\\index.js',
watchFiles: [
'D:\\projects\\js\\published\\builderz\\test\\samples\\pure\\src\\index.js'
]
}".
这是测试文件
import { resolve } from "path";
import builderz from "../src";
jest.useFakeTimers();
describe("production", () => {
it("test pure js", async () => {
await builderz({
isSilent: true,
paths: [resolve(__dirname, "./samples/pure")]
});
// update it later of cource:
expect(true).toEqual(true);
});
});
和 babel.config
module.exports = api => {
api.cache(true);
return {
presets: [
[
"@babel/preset-env",
{
targets: {
node: "current"
}
}
]
]
};
};
Add "testEnvironment": "jsdom"
into jest
键入 package.json
"jest": {
"testEnvironment": "jsdom",
"preset": "react-native",
...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)