Jest 快照在本地工作但在 Travis 上始终失败 CI

Jest snapshots work locally but consistently fail on Travis CI

我的 Jest 快照测试在 Travis 上一直失败,有以下区别:

-      "_instance": Constructor {
+      "_instance":  {

开发依赖项包括:

"babel-jest": "^19.0.0",
"jest": "^19.0.2",
"react-addons-test-utils": "^15.4.2",
"babel-preset-es2015": "^6.22.0",
"babel-preset-react": "^6.23.0",
"react-test-renderer": "^15.4.2",
"enzyme": "^2.7.1",
"enzyme-to-json": "^1.5.0",
"react": "^15.2.0",
"react-dom": "^15.2.1"

在本地和 Travis 上使用 Node 7.0.0。

有什么想法吗?

我会确保在本地和 CI 上使用完全相同的版本。尝试将 jestbabel-jest 固定到特定版本:

"babel-jest": "=19.0.0",
"jest": "=19.0.2",

也许我会对所有依赖项做同样的事情!然后从你的机器上删除 node_modules/,运行 测试(必要时更新快照)并推送。

Ps。我也会尝试清空 travis 上的缓存:https://travis-ci.com/USERNAME/REPOSITORY_NAME/caches.

就我而言,构建系统中的节点版本与本地节点版本不匹配。