【问题标题】:How to debug single Karma test using WebStorm如何使用 WebStorm 调试单个 Karma 测试
【发布时间】:2023-03-11 22:35:01
【问题描述】:

我正在尝试使用 Karma 和 WebStorm 调试单个测试。 我发现这是可以做到的,

  1. 当我不使用报道记者并使用 -- reporter progress 运行 karma.config 时,但这不起作用
  2. 在单元测试中更改it into fit

如何使用 WebStorm 调试单个 Karma 测试?

karma.config

module.exports = function(config) {
  var testWebpackConfig = require('./webpack.test.js')({env: 'test'});

  var configuration = {

    htmlReporter: {
      outputFile: 'tests/reports/units.html',
      // Optional
      pageTitle: 'Unit Tests',
      subPageTitle: 'A sample project description',
      groupSuites: true,
      useCompactStyle: true,
      useLegacyStyle: true
    },




    // base path that will be used to resolve all patterns (e.g. files, exclude)
    basePath: '',

    /*
     * Frameworks to use
     *
     * available frameworks: https://npmjs.org/browse/keyword/karma-adapter
     */
    frameworks: ['jasmine'],

    // list of files to exclude
    exclude: [ ],

    /*
     * list of files / patterns to load in the browser
     *
     * we are building the test environment in ./spec-bundle.js
     */
    files: [ { pattern: './config/spec-bundle.js', watched: false } ],

    /*
     * preprocess matching files before serving them to the browser
     * available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor
     */
    preprocessors: { './config/spec-bundle.js': ['coverage', 'webpack', 'sourcemap'] },

    // Webpack Config at ./webpack.test.js
    webpack: testWebpackConfig,

   // coverageReporter: {
   //   type: 'in-memory'
   // },

    remapCoverageReporter: {
      'text-summary': null,
      json: './coverage/coverage.json',
      html: './coverage/html'
    },

    // Webpack please don't spam the console when running in karma!
    webpackMiddleware: { stats: 'errors-only'},

    /*
     * test results reporter to use
     *
     * possible values: 'dots', 'progress'
     * available reporters: https://npmjs.org/browse/keyword/karma-reporter
     */

    // CHANGE !!!
    reporters: [ 'progress' ],

    //reporters: [ 'mocha', 'coverage', 'remap-coverage', 'progress', 'html'  ],
    // web server port
    port: 9876,

    // enable / disable colors in the output (reporters and logs)
    colors: true,

    /*
     * level of logging
     * possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
     */
    logLevel: config.LOG_INFO,

    // enable / disable watching file and executing tests whenever any file changes
    autoWatch: true,

    /*
     * start these browsers
     * available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
     */
    browsers: [
      'Chrome'
    ],

    customLaunchers: {
      ChromeTravisCi: {
        base: 'Chrome',
        flags: ['--no-sandbox']
      }
    },

    /*
     * Continuous Integration mode
     * if true, Karma captures browsers, runs the tests and exits
     */
    singleRun: process.env.TRAVIS ? true : false
  };

  if (process.env.TRAVIS){
    configuration.browsers = ['PhantomJS'];
  }

  config.set(configuration);
};

【问题讨论】:

    标签: karma-runner webstorm karma-coverage


    【解决方案1】:

    'Focused' 规格/套装适合我 (WebStorm 2016.3 EAP) - 只有 fdescribe/fit 套装/测试结果显示在测试运行控制台中。

    如果您错过了运行个人业力测试/套装的机会,请关注WEB-13173 以获取更新。另见https://github.com/karma-runner/karma/issues/1235

    【讨论】:

      猜你喜欢
      • 2016-03-24
      • 2017-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多