2017-06-21 24 views
15

JestにReactアプリケーションのスナップショットテストを実行させようとしています。私のpackage.jsonからバージョン:モジュール 'react/lib/ReactComponentTreeHook'が 'ReactDebugTool.js'から見つかりません

"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のディレクトリを削除して再インストールしようとしていると私は私へのパスことを確認しましたコンポーネントは正しいものの、この同じエラーが発生します。

私のテストでは、次のようになります。私は間違って何をやっている

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(); 
}); 

答えて

27

が先週、同様の問題に遭遇した、我々は最近にアップグレードしたリアクト - ネイティブのプロジェクトがあります。

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

をして、私たちは冗談テストを実行しようと、あなたが述べたように、我々は同じ問題を見ました上記。その後、我々は 反応試験 - レンダラの最先端のバージョンがあり実現し、我々はその1つの試してみた:

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

をそして今、問題はなくなりました。 0.47.0

6

はまだ受け入れ答えとエラーは次の操作を実行するために持っていた:

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

酵素は、上記の変更で動作しますが、シミュレーションの任意の並べ替えが無効になって、しません彼らがサポートするまでタップします。

0

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

関連する問題