我正在SyntaxError: Unexpected token import
为我的 Jest 测试获取我的设置文件。我知道修复是通过.babelrc
文件。这实际上在某些情况下有效。我从https://github.com/zeit/next.js/tree/canary/examples/with-jest复制粘贴它。
当我运行时npm test
,它失败了。当我运行时npm run test
,它也失败了。当我运行时npm run test:coverage
,它起作用了。我的脚本是这些:
"test": "NODE_ENV=test jest",
"test:coverage": "NODE_ENV=test jest --coverage --coverageDirectory=coverage",
如果我test:coverage
改为 just NODE_ENV=test jest
,那将失败。因此,以某种方式请求覆盖报告神奇地解决了这个问题。
奇怪的是,当基本的覆盖面工作时,覆盖面失败了。我删除了我的包锁,删除了模块,然后npm install
再次尝试。然后失败案例反转到我上面写的内容。
我的设置文件是这样的:
import { configure } from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';
import jestFetch from 'jest-fetch-mock';
configure({ adapter: new Adapter() });
global.fetch = jestFetch;
我已将 Nextjs 示例应用程序修改为几乎相同,但未出现错误。我不知道有什么区别。
更新
我从字面上复制了样本的所有内容,但它仍然不起作用。然后我将我的文件夹从my-app
to重命名my-appy
,它确实有效。我返回了所有原始代码,包括文件夹名称my-app
,但它失败了。我重命名了文件夹,它工作。文件夹如何影响我运行时发生的事情npm test
更新 2
其他人下载我的回购没有问题。从来没有遇到过这样的文件夹名称问题。
更新 3
克隆到/Users/dstein/Repositories/my-app
失败。克隆到/Users/dstein/my-app
作品。克隆到/Users/dstein/Repositories/abc/my-app
作品。不确定是什么可以针对一个随机的失败路径,尤其是考虑到重命名my-app
自身的文件夹是有效的。