grunt connect ( "grunt-contrib-connect": "0.11.2"
) を grunt jasmine ( ) と組み合わせて使用してい"grunt-contrib-jasmine": "^1.1.0"
ます。接続構成は以前はポート番号をハードコーディングしており、jasmine 構成も構成host
オプションで同じポート番号を使用するように構成されていました。
useAvailablePort
同じポートを使用した同時ビルドの問題を解決するために、接続でオプションを有効にしたいと考えています。しかし、接続からジャスミンにポート番号を正しく伝える方法を理解するのに苦労していますか?
私のうなり声の初期設定ブロックの関連セクションは次のとおりです。
connect: {
test: {
options: {
keepalive: false,
hostname: 'localhost',
port: 1234,
base: ['.']
}
}
}
jasmine: {
js: {
src: ...,
options: {
keepRunner: true,
summary: true,
host: 'http://localhost:1234/',
specs: 'src/test/js/**/*Spec.js',
vendor: ...
}
}
}
以下を使用して、うなり声テストタスクを作成しました。
grunt.registerTask('test', ['connect', 'jasmine:js']);
からポートをキャプチャしconnect
てホストを設定するベストプラクティスの方法は何でしょうjasmine:js
か?
私は次のようにテストタスクを変更しようとしましたが、喜びはありません(これが正しい方法かどうかもわかりません):
grunt.registerTask('test', 'Run jasmine unit tests', function () {
grunt.event.once('connect.test.listening', function(host, port) {
var jasmineHost = 'http://' + host + ':' + port;
grunt.log.writeln('Running jasmine tests from: ' + jasmineHost );
grunt.config.set('jasmine:js:options:host', jasmineHost );
grunt.task.run('jasmine:js');
});
grunt.task.run('connect:test');
});