2017-05-30 16 views
0

ために複数のスクリプトを実行するために、ワイルドカードを使用して、私は私はpackage.json NPMの実行テスト

"scripts": { 
    "test": "node tests/*-test.js" 
} 

を持っていると私はls tests/*-test.jsを実行することで確認することができtestsフォルダにa-test.jsb-test.jsを持っています。

ただし、npm run testa-test.jsのみ実行しています。 *-test.jsスクリプトをすべて実行するにはどうすればよいですか?明示的にリストするのは選択肢ではありません。なぜなら私は将来2つ以上を実行するからです。

あなたはこのような gruntgulpなど、タスクマネージャ、またはそれらのスクリプトを実行する簡単なスクリプトを使用でき
+0

あなたは、このノードテスト/ *を試してみましたか? –

答えて

0

"scripts": { 
    "test": "node test.js" 
} 

package.json

require('./test/a-test.js') 
require('./test/b-test.js') 

test.jsをこれらを自動化するためにインクルードモジュールを使用することもできますhttps://www.npmjs.com/package/include-all

INCLUDEALL使っ

例: - シェルでtest.jsコマンド

const path = require('path'); 
    const includeAll = require('include-all'); 

    const controller = includeAll({ 
     dirname: path.join(__dirname, 'test'), 
     filter: /(.+test)\.js$/, 
    }); 
+0

そのtest.jsを実行しても動作しません: 'エラー:モジュール 'a-test.js'を見つけることができません。私はそれらをすべて 'test'フォルダに置き、requireから" test/"を削除しました。 私はincludeAllスクリプトも作成しましたが、何も実行しません!それが問題であれば、これをすべてテストフォルダの下に置いておきたい。 – swagrov

+0

残念ですが、 'require( './ test/a-test.js')'、更新 –

+0

API-easy.jsを使用している私のテストの出力を抑制しているようです。自分でテストを実行すると、チェックマークと失敗のリストが表示されます。しかし、test.jsの答えを使って、console.logステートメントを出力しますが、それ以外は表示しません。どんな考え? – swagrov

関連する問題