Hoe krijg ik een lijst met geslaagde tests van karma runner suite?

Als ik karma op mijn webapp uitvoer, krijg ik alleen generieke berichten zoals geslaagde tests – is er een manier om een ​​lijst met geslaagde tests te krijgen? Hoe krijg ik meer uitgebreide output?

Ik kan dit nergens in de documentatie vinden.


Antwoord 1, autoriteit 100%

Ik weet hoe dit kan!

Karma’s terminaloutput is afkomstig van objecten die Reporters worden genoemd. Karma wordt geleverd met een aantal ingebouwde Reporters (ze zijn te vinden in karma/lib/reporters). Karma kan ook aangepaste Reporters gebruiken.

U kunt specificeren welke reporters worden gebruikt in het karma.config.js-bestand van uw project.

De ‘dots’-reporter drukt bijvoorbeeld gewoon een stip af wanneer elke test slaagt:

reporters: ['dots'],

De ‘vooruitgang’-reporter drukt meer dan stippen af:

reporters: ['progress'],

De aangepaste reporter karma-spec-reporterdrukt de naam van elke test af wanneer de test slaagt of mislukt ( maar niet veel anders):

reporters: ['spec'],

Misschien wilt u uw eigen verslaggever aanstellen, aangezien karma-junit-reporter, karma-spec-reporter en de meegeleverde verslaggevers mogelijk niet aan uw behoeften voldoen.

Ik vermoed dat het aanpassen van karma-spec-reporter in dit geval de beste optie is, omdat er al een regel wordt afgedrukt wanneer een test slaagt.

Als je op zoek bent naar iets dat nog eenvoudiger is om mee te werken, hieris een aangepaste reporter die ik heb gebouwd . Het rapporteert geslaagde en mislukte tests zonder terminalkleuren.


Antwoord 2, autoriteit 93%

Ik raad de Karma Spec Reporter aan. Dit geeft je een mooi testrapport zoals dit.

Hoe het te gebruiken:

  1. Installeer de Karma Spec Reporter

Op de opdrachtregel in uw project,

npm install karma-spec-reporter --save-dev

  1. Voeg Karma Spec Reporter toe aan de configuratie

In karma.conf.js,

...
  config.set({
  ...
    reporters: ["spec"],
    specReporter: {
      maxLogLines: 5,         // limit number of lines logged per test
      suppressErrorSummary: true,  // do not print error summary
      suppressFailed: false,  // do not print information about failed tests
      suppressPassed: false,  // do not print information about passed tests
      suppressSkipped: true,  // do not print information about skipped tests
      showSpecTiming: false // print the time elapsed for each spec
    },
    plugins: ["karma-spec-reporter"],
  ...

Dat is alles. Geniet ervan.


Antwoord 3, autoriteit 15%

Gebruik deze plug-in met karma 0.9.0 of hoger

https://github.com/mlex/karma-spec-reporter


Antwoord 4, autoriteit 2%

U kunt logboeken toevoegen aan uw testspecificatie. Bekijk log4js-node:

https://github.com/nomiddlename/log4js-node

Other episodes