【问题标题】:Why do we need gulp over karma?为什么我们需要 gulp over karma?
【发布时间】:2015-12-02 02:42:32
【问题描述】:

我是 gulp 和 karma 工具的新手。我搜索了谷歌并处理了小型测试用例并成功执行。

在 karma 中,我们正在使用命令“start karma karma.conf.js”配置要测试和运行的单元测试用例 js 文件

在 gulp 中,我们正在配置 karma 配置文件并使用命令 'gulp test' 执行

直接在 karma 上运行 gulp 测试有什么好处?

【问题讨论】:

    标签: angularjs gulp karma-runner


    【解决方案1】:

    使用 gulp 的一个优点是您可以根据该任务编排更复杂的任务。例如,您可能需要一个 gulp 任务,该任务首先构建项目,然后执行单元测试。然后你可以用一个命令而不是两个命令来执行它。

    但是,如果您只运行运行 karma 的 gulp 任务,那么使用 gulp 将没有任何优势(除了命令更易于键入)。

    您可以查看Gulp Recipes 页面,了解您可以使用 gulp 完成的其他任务。

    【讨论】:

      【解决方案2】:

      我真正能想到的唯一一件事就是让 gulp 使用 wiredep 之类的东西来获取运行测试所需的所有适当的 3rd 方 JS 文件。例如

      var gulp = require('gulp'),
          Server = require('karma').Server,
          bowerDeps = require('wiredep')({
              dependencies: true,
              devDependencies: true
          }),
          testFiles = bowerDeps.js.concat([
              'src/**/*.js',
              'test/**/*.js'
          ]);
      
      gulp.task('test', function(done) {
          new Server({
              configFile: 'karma.conf.js',
              files: testFiles,
              singleRun: true
          }, function(exitStatus) {
              if (exitStatus) {
                  console.warn('Karma exited with status', exitStatus);
              }
              done();
          }).start();
      });
      

      否则,您必须手动维护karma.conf.js 文件中的files 数组。

      【讨论】:

        猜你喜欢
        • 2019-06-09
        • 2014-04-02
        • 2014-06-18
        • 2017-02-26
        • 2011-04-03
        • 2017-07-27
        • 2020-09-21
        • 2020-03-09
        • 2018-12-24
        相关资源
        最近更新 更多