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);
config
variables是模糊的。 这是一个简单的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的唯一方法。