Skip to content

Latest commit

 

History

History
78 lines (59 loc) · 2.55 KB

README.md

File metadata and controls

78 lines (59 loc) · 2.55 KB

testem-gitlab-reporter

TravisCI Build Status Latest NPM release

GitLab/JUnit reporter for testem

GitLab requires the JUnit format for test results. testem comes with an xUnit reporter. Unfortunately, even though the formats look quite similar there are some differences which make them incompatible in the context of GitLab CI. testem-gitlab-reporter is a testem reporter that specifically targets the format that is expected by GitLab CI.

Install

npm install testem-gitlab-reporter

Usage

Change your testem.js file to use the testem-gitlab-reporter package. If you would like to keep the existing TAP console output you can use the testem-multi-reporter package to take advantage of multiple reporters:

const MultiReporter = require('testem-multi-reporter');
const GitLabReporter = require('testem-gitlab-reporter');
const TAPReporter = require('testem/lib/reporters/tap_reporter');

let reporter = new MultiReporter({
  reporters: [
    {
      ReporterClass: TAPReporter,
      args: [false, null, { get: () => false }],
    },
    {
      ReporterClass: GitLabReporter,
      args: [false, fs.createWriteStream('junit.xml'), { get: () => false }],
    },
  ],
});

module.exports = {
  framework: 'qunit',
  test_page: 'tests/index.html?hidepassed&coverage',
  disable_watching: true,
  launch_in_ci: [
    'Chrome'
  ],
  reporter
};

Running testem (or ember test) now will create a junit.xml file, which can be passed to GitLab as described in the GitLab docs.

License

This project is developed by and © Mainmatter GmbH and contributors. It is released under the MIT License.