使用 Jest 的 React Native 测试在 error-guard.js 中的 ErrorHandler 类型上崩溃:14

问题描述 投票:0回答:1

我有一个 React Native 应用程序。当使用 Jest 运行测试时,它崩溃并显示以下输出:

<root-dir>/node_modules/@react-native/polyfills/error-guard.js:14
    type ErrorHandler = (error: mixed, isFatal: boolean) => void;
         ^^^^^^^^^^^^

    SyntaxError: Unexpected identifier 'ErrorHandler'

      at Runtime.createScriptFromCode (node_modules/jest-runtime/build/index.js:1505:14)
      at Object.<anonymous> (node_modules/react-native/jest/setup.js:402:6)

我正在使用 jest

^29.2.1
,这是我的
package.json
文件中的“jest”对象:

"jest": {
    "preset": "react-native",
    "transformIgnorePatterns": [
      "node_modules/(?!(jest-)?react-native)",
    ]
  }

另外,这是我的

babel.config.js
文件:

module.exports = {
  presets: ['module:metro-react-native-babel-preset'],
};

请注意,我的测试套件(

__test__
文件夹)仅包含默认的应用程序渲染测试。

关于如何解决这个问题有什么想法吗?我尝试了在其他帖子中看到的几种解决方案,包括将

"node_modules/(?!(jest-)?@?react-native|@react-native-community|@react-navigation)"
"/node_modules/(?!(@react-native|react-native)/).*/"
添加到我的
"transformIgnorePatterns"
文件中的
package.json

react-native testing jestjs react-native-navigation
1个回答
0
投票

更新:我能够使用以下正则表达式修复此问题:“transformIgnorePatterns”:[ “node_modules/(?!(jest-)?react-native|@react-native|@react-navigation)” ]

如果有人有任何建议或更好的整体设置方法,请随时在下面添加!谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.