具有autoWatch = false的持久性Karma测试运行器

时间:2015-08-01 01:34:06

标签: karma-runner

我试图通过节点(gulp,特别是)在后台持续运行Karma,但手动重新运行测试,即我将autoWatch设置为false。我用以下内容启动服务器:

karma_server = new karma.Server(config.karma)
karma_server.start()

然后在其他地方我想在Karma之外更新文件时触发运行的测试。人们期望可能有效的API methodserver.refreshFiles(),但它不会这样做。

在内部,似乎executor.schedule()可能会成功,但它似乎没有文档,私密且无法访问。

因此,当关闭autoWatch时,如何使用现有服务器触发Karma测试?我确信我必须遗漏一些明显的东西,否则autoWatch选项总是需要为了使服务器有用。

1 个答案:

答案 0 :(得分:2)

如果您的服务器已经运行,您可以使用业力转轮与之通信:

var runner = require('karma').runner,
    karmaConfig = {/* The karma config here */};

runner.run(karmaConfig, callback);

grunt-karma插件的工作原理如下,您可以查看更多信息: https://github.com/karma-runner/grunt-karma/blob/master/tasks/grunt-karma.js