typescript - protractor/jasmine få testmeta


Jeg prøver å hente testmeta under kjøring, spesielt testnavn/beskrivelse. Jeg bruker protractor versjon 5.3.2 og jasmine av versjon 2.8.8

Tidligere tråder på stackoverflow stolte på jasmine for å utføre denne oppgaven, men jeg mislyktes med å følge instruksjonene/

Noen forslag?

Svar #1

Ja, du kan få dette fra jasmine, det er ganske enkelt å lage en grunnleggende reporter, og så kan du bygge videre på den derfra. Her er Jasmine-dokumentasjonen om tilpasset reporter

Her er et grunnleggende eksempel:

// specReport.js
class SpecReport {
    // these functions are automatically provided from jasmine, nothing else required
    jasmineStarted(result) {
        console.log(result);
    };

    jasmineDone(result) {
        console.log(result);
    };

    suiteStarted(result) {
        console.log(result);
    };

    suiteDone(result) {
        console.log(result);
    };

    specStarted(result) {
        console.log(result);
    };

    specDone(result) {
        console.log(result);
    };
};

module.exports = SpecReport;

Og deretter trekke denne filen inn i konfigurasjonen din og instansiere den under onPrepare:

// conf.js
const SpecReport = require('./specReport');
exports.config = {
    framework: 'jasmine2',
    ... other stuff...

    onPrepare: function() {
        jasmine.getEnv().addReporter(new SpecReport());
    }
}

Dette vil begynne å skrive ut grunnleggende egenskaper for testen under kjøring, som inkluderer suite-beskrivelser, testnavn osv.