Karma public api缺lessconfigFile选项

gulp-karmabuild议像这样的外部configuration文件:

module.exports = { basePath: '', singleRun: true }; 

我想要一个像这样的外部configuration文件(grunt-karma风格):

 module.exports = function(config) { config.set({ basePath: '', singleRun: true }); }; 

如何使用proper config file与业力API。

细节:

我正在使用gulp-karma,正如前面提到的那样,我必须自己实施。

Karma API非常简单:

 var server = require('karma').server; server.start(config, done); 

configvariables是模糊的。 这是一个简单的configuration对象:

 var config = { basePath: '', singleRun: true // ... } 

让我们来看看grunt-karma:

示例grunt-karmaconfiguration:

 karma: { unit: { configFile: 'karma.conf.js' } } 

grunt-karmaconfiguration可以采用configFile选项,这在任何地方都没有logging。

我可以看到,我可以通过一个来自karma源代码的configFile选项:

var config = cfg.parseConfig(cliOptions.configFile, cliOptions);

是否有Karma API的文档提到了configFile选项,grunt-karma如何知道如何使用它 。

这个问题是令人惊讶的相关的,这些评论大部分风吹在这篇文章末尾提出的实际问题:“grunt-karma如何知道使用configuration对象与一个名为configFile属性。

我也一直在想,同样的事情,该属性没有列在任何地方的业力configuration文档。 例如,如果我想通过我的gulp文件中的公共API来运行我的业力testing。 它看起来像这样:…

 var karmaConfig = require('spec/karma.conf.js'); // where my config file exports an object with properties like exclude:, path: karma.start(karmaConfig)}, process.exit); 

这将工作得很好,除非我想导出configurationfunction,所以我可以使用configuration常量( 这里概述):

 // allows me to do this module.exports = function(config) { config.set({ logLevel: config.LOG_INFO }); } 

但是除非你使用这样的东西,否则没有办法让它工作。

 karma.start({configFile: 'spec/karma.conf.js'}, process.exit); 

在那里我简单地传递一个对象的属性configFile指向实际的configuration文件。

Karma文档并没有提到这个地方 (如此评论),但它是使用config函数导出方法完成通过API运行我的testing的唯一方法。