Тесты кармы не запускаются при добавлении модульных тестов для другого углового модуля в Ionic - PullRequest
0 голосов
/ 11 марта 2019

У меня есть приложение, работающее в следующих средах:

  • Ионные: 3.9.2
  • Карма: 2.0.2
  • Карма-Жасмин: 1.1.2
  • Жасмин: 3.1.0

Большинство моих классов содержатся в основных app.module.ts файлах declarations и entryComponents, которые расположены в ./src/app/app.module.ts.Недавно я добавил новый модуль, расположенный по адресу ./src/second/second.module.ts для классов, расположенных по адресу ./src/second/pages/**/page.ts.При использовании команды npm run test происходит сбой с

> my-test@0.0.1 test /Users/me/proj/proj-repo
> karma start ./test-config/karma.conf.js

webpack: wait until bundle finished: 
11 03 2019 10:03:06.579:ERROR [karma]: { inspect: [Function: inspect] }
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-test@0.0.1 test: `karma start ./test-config/karma.conf.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the my-test@0.0.1 test script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

Вот мой файл karma.conf.js:

var webpackConfig = require('./webpack.test.js');
process.env.CHROME_BIN = require("puppeteer").executablePath();

module.exports = function(config) {
  var _config = {
    basePath: '../',

    frameworks: ['jasmine'],

    files: [
      {
        pattern: './test-config/karma-test-shim.js',
        watched: true
      },
      {
        pattern: './src/assets/**/*',
        watched: false,
        included: false,
        served: true,
        nocache: false
      }
    ],

    proxies: {
      '/assets/': '/base/src/assets/'
    },

    preprocessors: {
      './test-config/karma-test-shim.js': ['webpack', 'sourcemap']
    },

    webpack: webpackConfig,

    webpackMiddleware: {
      stats: 'errors-only'
    },

    webpackServer: {
      noInfo: true
    },

    browserConsoleLogOptions: {
      level: 'log',
      format: '%b %T: %m',
      terminal: true
    },

    jasmineNodeOpts : {
      defaultTimeoutInterval: 20000
    },

    coverageIstanbulReporter: {
      reports: [ 'html', 'lcovonly', 'cobertura' ],
      fixWebpackSourcePaths: true
    },

    reporters: config.coverage ? ['kjhtml', 'dots', 'coverage-istanbul', 'junit', 'progress'] : ['kjhtml', 'dots'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    concurrency: 1,
    //browsers: ['PhantomJS'],
    captureTimeout: 600000,
    browserDisconnectTolerance: 3, 
    browserDisconnectTimeout : 600000,
    browserNoActivityTimeout : 600000,
    browsers: ['ChromeHeadless'],
    singleRun: false,
    junitReporter: {
      outputDir: 'coverage',
      useBrowserName: false
    }
  };

  config.set(_config);
};

Любое понимание того, как я могу запустить эти тесты, было бы замечательно!Дайте мне знать, если мне нужно будет предоставить больше информации.

...