我将 grunt connect ( "grunt-contrib-connect": "0.11.2"
) 与 grunt jasmine ( "grunt-contrib-jasmine": "^1.1.0"
) 结合使用。连接配置之前对端口号进行了硬编码,并且 jasmine 配置也配置为在host
配置选项中使用相同的端口号。
我现在想useAvailablePort
在连接中启用该选项,以解决使用同一端口的并发构建问题。但是我很难理解如何正确地将端口号从连接传递到茉莉花?
以下是我的 grunt init 配置块的相关部分:
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 测试任务:
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');
});