2017-04-24 6 views
1

(と私はすべて正しいNPMパッケージがインストールされている)マイフォルダ構造があるテスト

app 
    | 
    folder1 
    reactComponent.js 
    | 
    testFolder 
     reactComponent.spec.js 

を実行していない私は、NPMテスト

、として私Krama karma.conf.jsファイルを開始/カルマ/ WebPACKのに反応します
var webpack = require('webpack'); 

module.exports = function (config) { 
    config.set({ 

    singleRun: true, 

    frameworks: ['jasmine'], 
    browsers: ['PhantomJS'], 

    files: [ 
     'tests.webpack.js' 
    ], 

    preprocessors: { 
     'tests.webpack.js': [ 'webpack', 'sourcemap' ] 
    }, 

    reporters: [ 'dots' ], 

    webpack: { 
     devtool: 'inline-source-map', 
     module: { 
     loaders: [ 
      { test: /\.js$/, loader: 'babel-loader' } 
     ] 
     } 
    }, 

    webpackServer: { 
     noInfo: true 
    } 

    }); 
}; 

tests.webpack.js

var context = require.context('../app', true, /\*.spec.js$/); 
context.keys().forEach(context); 

どちらkarma.conf.jstests.webpack.js実行されています。 マイspecファイルreactComponent.spec.jsは単なるスターターテスト

describe('Simple test', function() { 
    it('returns 1 + 1 = 2 ', function() { 
     expect(2).toEqual(1 + 1); 
    }); 
}); 

である。しかし、コマンドウィンドウ(Windows 10)で私は

D:\development\react\poc9-unittests>npm test 

> [email protected] test D:\development\react\poc9-unittests 
> karma start ./testing/karma.conf.js 

24 04 2017 11:27:30.822:INFO [karma]: Karma v1.6.0 server started at http://0.0.0.0:9876/ 
24 04 2017 11:27:30.825:INFO [launcher]: Launching browser PhantomJS with unlimited concurrency 
24 04 2017 11:27:30.836:INFO [launcher]: Starting browser PhantomJS 
24 04 2017 11:27:33.859:INFO [PhantomJS 2.1.1 (Windows 8 0.0.0)]: Connected on socket YzqWwfSyJoA5P4DbAAAA with id 73371783 
PhantomJS 2.1.1 (Windows 8 0.0.0): Executed 0 of 0 ERROR (0.001 secs/0 secs) 
npm ERR! Test failed. See above for more details. 

は詳細がありますについては上記を参照してください取得します何も見えず、ログファイルも生成されません。 tests.webpack.jsで

私はだから私は、テストランナーを実行している表示されます

Module not found: Error: Cannot resolve 'file' or 'directory' ../appNonExistentFolder in D:\devel...... 

を取得

var context = require.context('../appNonExistentFolder ', true, /\*.spec.js$/); 

存在しないフォルダを指すようにフォルダを変更した場合。 私のフォルダRegExpは正しいですか?私がやろうとしている何

は、アプリのルートフォルダの下に任意のフォルダ内のすべての.spec.jsファイルを実行しています。

私は

webpackServer: { 
     noInfo: false 
    } 

を設定し、私のkarma.conf.jsファイルに私はこれがカルマは、あなたのテストを見つけることができないという結果である

Hash: f4683f5fa2953dc3a97c 
Version: webpack 1.15.0 
Time: 61ms 
webpack: Compiled successfully. 
webpack: Compiling... 
Hash: 18eef6f855c83434d040 
Version: webpack 1.15.0 
Time: 1086ms 
      Asset  Size Chunks    Chunk Names 
tests.webpack.js 4.88 kB  0 [emitted] tests.webpack.js 
chunk {0} tests.webpack.js (tests.webpack.js) 269 bytes [rendered] 
    [0] ./testing/tests.webpack.js 109 bytes {0} [built] 
    [1] ./app \*.spec.js$ 160 bytes {0} [built] 
webpack: Compiled successfully. 

答えて

1

ビットの詳細情報を取得した場合;

これにはさまざまな理由があります。最初にパスを確認してください。karma.conf.js テストファイルにスペルがないか間違っている可能性があるので、カルマには何も実行されません。成功テストの数が0になるテストがない場合、これはエラーとして読み込まれます。ダミー仕様を追加してみてください。

1

ああ、それは

var context = require.context('../app', true, /\.spec.js$/); 
context.keys().forEach(context); 
を読み取るように

tests.webpack.jsは*を削除し、私の正規表現で愚かなタイプミス

関連する問題