web-dev-qa-db-ja.com

「ReactDebugTool.js」からモジュール「react / lib / ReactComponentTreeHook」が見つかりません

私はJestにReactアプリのスナップショットテストを実行させようとしています。私のpackage.jsonのバージョン:

  "react": "15.6.1",
  "react-dom": "15.6.1",
  "react-test-renderer": "15.6.1",

私はこのエラーを乗り越えることができません:

● Test suite failed to run


Cannot find module 'react/lib/ReactComponentTreeHook' from 'ReactDebugTool.js'

  at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:179:17)
  at Object.<anonymous> (node_modules/react-test-renderer/lib/ReactDebugTool.js:16:30)

Node_modules dirを削除して再インストールしようとしましたが、コンポーネントへのパスが正しいことを確認しましたが、それでも同じエラーが発生します。

私のテストは次のようになります。

import React from 'react';
import renderer from 'react-test-renderer';
import { Section } from '../../app/views/containers/section';

it('renders correctly', () => {
  const section = renderer.create(
    <Section key="1" section="finance"/>
  ).toJSON();
  expect(section).toMatchSnapshot();
});

私は何を間違えていますか?

18
jmargolisvt

先週、同様の問題に遭遇しました。最近アップグレードされたReact-Nativeプロジェクトがあります。

"react-native": "0.45.1"
"react": "16.0.0-alpha.12"
"jest": "20.0.4"
"react-test-renderer": "15.5.4"

そして、Jestテストを実行しようとしましたが、上記と同じ問題が見つかりました。次に、react-test-rendererの最先端のバージョンがあることに気付き、それを試しました。

"react-test-renderer": "^16.0.0-alpha.12"

そして今、問題はもうありません。

33
dotcomXY

0.47.0で

受け入れられた答えにはまだエラーがあり、以下を実行する必要がありました。

"react-dom": "^16.0.0-beta.5", "react-test-renderer": "16.0.0-alpha.12",

酵素は上記の変更で動作しますが、あらゆる種類のシミュレーションは動作せず、サポートされるまでタップを無効にします。

7
wmcbain

React 16.0.0にアップグレードする際に、react-domを16.0.0にアップグレードする必要があることに気付きました。

3
TGarrett