使用Jenkins运行Jasmine测试并覆盖Sonarqube

时间:2017-10-17 11:47:37

标签: angular typescript jenkins continuous-integration

我们使用Jenkins进行CI和SonarQube进行代码质量。作为Web框架,我们使用Angular(4)。问题是我们的Jenkins可以构建我们的项目,但不能运行茉莉花测试。我尝试了一些东西,但没有任何效果。我希望Jenkins运行我们的测试并将覆盖数据提供给sonarqube。是否有人可以解释如何配置项目和jenkins来执行此操作或者可能是教程的链接。

这是我们目前的karma.conf.js

// Karma configuration file, see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html

module.exports = function (config) {
  config.set({
    basePath: '',
    frameworks: ['jasmine', '@angular/cli'],
    plugins: [
      require('karma-jasmine'),
            require('karma-chrome-launcher'),
            require('karma-phantomjs-launcher'),
      require('karma-jasmine-html-reporter'),
      require('karma-coverage-istanbul-reporter'),
            require('@angular/cli/plugins/karma'),
            require('karma-junit-reporter'),
            require('karma-mocha-reporter')
    ],
    client:{
      clearContext: false // leave Jasmine Spec Runner output visible in browser
    },
    coverageIstanbulReporter: {
      reports: [ 'html', 'lcovonly' ],
      fixWebpackSourcePaths: true
    },
    angularCli: {
      environment: 'dev'
    },
        reporters: ['mocha', 'junit'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: false,
    browsers: ['Chrome'],
        singleRun: true,

        junitReporter: {
            outputDir: 'build/test-results/karma',
            outputFile: 'karma-test.xml',
            useBrowserName: true
        },
  });
};

1 个答案:

答案 0 :(得分:0)