2017-11-13 24 views
6

からモジュールを見つけることができません:は、私は、次の冗談テストを持っている「反応 - ネイティブimplementation.js」

import React from 'react'; 
import IndexSign from '../IndexSign'; 
import renderer from 'react-test-renderer'; 

it('renders correctly',() => { 
    const tree = renderer.create(
    <IndexSign index={1}/> 
).toJSON(); 
    expect(tree).toMatchSnapshot(); 
}); 

私はこのStyleSheetコンポーネントのコールを呼び出していますIndexSignコンポーネント:については

import {StyleSheet} from 'react-native'; 

export default StyleSheet.create({ 
    //some styles 
}); 

をテスト、私はGulpを使用しています:

gulp.task('tests',() => { 
    process.env.NODE_ENV = 'test'; 
    return gulp.src('src').pipe(jest({ 
    })); 
}); 

問題は私がこのte私は得る:

● Test suite failed to run 

Cannot find module 'StyleSheet' from 'react-native-implementation.js' 

    at Resolver.resolveModule (../node_modules/jest-resolve/build/index.js:142:17) 
    at Object.StyleSheet (../node_modules/react-native/Libraries/react-native/react-native-implementation.js:98:25) 
    at Object.<anonymous> (styles/Styles.js:5:13) 

これはなぜ起こっているのですか?

インポートしたreact-nativeではなく、StyleSheetreact-native-implementation.jsで検索しているのはなぜですか?

なぜ、StyleSheetが見つかりませんか?

+0

解決策は見つかりましたか?これにも遭遇した – Zephir77167

答えて

2

同じ問題が発生しました。追加する

"jest": { 
    "preset": "react-native" 
}, 

package.jsonにはエラーが修正されました。

+0

プロジェクトが 'react-native init'で作成された場合、これはあなたのために行われます – mcabe

関連する問題