react-native 56.0更新:快照测试不同

时间:2018-08-22 11:01:23

标签: reactjs react-native jestjs

在一个简单的项目中将我的本机版本升级到本机56.0之后,我的快照看起来有所不同。我没有发现任何暗示,这应该在新版本中有所不同(也许是这样)。

我不得不解决另一个问题(据说是babel 7),并将react-native转换器添加到我的笑话配置中:

"transform": {
    "^.+\\.js$": "<rootDir>/node_modules/react-native/jest/preprocessor.js"
},

我以前不必这么做。无论如何,我的快照看起来并不相同,而不是<Text>节点,而是仅渲染<Component>节点。这使得差异看起来像这样:

-   </Text>
-   <Text
-     accessible={true}
-     allowFontScaling={true}
-     ellipsizeMode="tail"
+   </Component>

有人暗示为什么会发生这种情况,或者应该发生这种情况吗?我应该更新快照还是这是我需要解决的问题?

谢谢!

1 个答案:

答案 0 :(得分:0)

您是否也将jestbabel-jest升级到版本23.x?这个版本的Jest通过排除没有设置值的prop来更改快照结果,但是它不应更改JSX中的组件类型。确保您的笑话依赖项与React Native 0.56软件包中指定的依赖项相同。

此外,要解决开玩笑的预处理程序问题,请尝试在babel.config.js之外添加babelrc。这使我们可以继续在转换中使用babel-jest