我将react-native升级到0.39.0,将jest升级到17。出于某种原因,当我运行测试时,jest 17在多个测试中抛出错误。但是 Jest 工作正常吗?
● Test suite failed to run
Cannot find module 'ReactElementType' from 'ReactRef.js'
at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:151:17)
at Object.<anonymous> (node_modules/react-native/Libraries/Renderer/src/renderers/shared/stack/reconciler/ReactRef.js:14:344)
at Object.<anonymous> (node_modules/react-native/Libraries/Renderer/src/renderers/shared/stack/reconciler/ReactReconciler.js:14:14)
如果您使用的是旧版本 babel-plugin-flow-react-proptypes,则可能会发生这种情况(最高 0.18)与相当新的 React Native(0.38 及更高版本)。
参见this问题以获取更多详细信息。
升级到插件版本 0.19 似乎可以解决该问题。无论您使用哪个版本的 babel-jest,这都有效,甚至最高版本为 18.0.0。
即使您没有使用 babel-plugin-flow-react-proptypes,您也可能想阅读他们的 explanations了解可能导致此类错误的原因,其中流类型未正确剥离。
(请注意,正如您在上述问题中看到的那样,有些人在升级后开始出现不同的错误。当前尝试在 iOS 中运行该应用程序时似乎确实是这种情况,但希望该问题能够得到解决在不久的将来。)
我是一名优秀的程序员,十分优秀!