Controllare che non ci siano errori nella console del browser con il goniometro
-
21-12-2019 - |
Domanda
Sto usando il goniometro per testare AngularJS
Voglio verificare che alla fine del test non si sono verificati eccezioni non rilevate e sono state stampate nella console del browser.
C'è un modo semplice per farlo?
Soluzione
Se stai usando il goniometro con Jasmine, usa il seguente codice:
afterEach(function() {
browser.manage().logs().get('browser').then(function(browserLog) {
expect(browserLog.length).toEqual(0);
});
});
.
Questo passerà il caso di prova se non ci sono errori di console.Se ci sono errori di console, il test fallirà.
Le istruzioni su come accedere al contenuto della console del browser possono essere trovate in Come posso ottenere la sezione della console del browser delle FAQ.
Altri suggerimenti
goniometro 2.0.0 ha introdotto un nuovo plugin console
specifico per il compito.
Aggiungi quanto segue alla configurazione del goniometro:
plugins: [{
path: '/path/to/node_modules/protractor/plugins/console/index.js',
failOnWarning: true,
failOnError: true
}],
. Con un piccolo sforzo possiamo modificare la risposta accettata per lavorare con cetriolo.js, nel caso in cui non stia usando il protractor con il quadro di test predefinito.
this.After(function(callback) {
browser.manage().logs().get('browser').then(function(browserLog) {
if (browserLog.length !== 0) {
var failMessage = "There was output in the browser console:" +
browserLog.map(JSON.stringify).join(";\n");
callback.fail(failMessage);
}
else {
callback();
}
});
});
.
Vuoi controllare la documentazione su dopo i ganci , che sono equivalenti del cetriolo al afterEach
del gelsomino.
Come @Velochy ha dichiarato che ora è un pacchetto proprietario per il modulo: https://www.npmjs.com/package/protractor-console-plugin
Puoi usarlo nel tuo protractor.conf:
plugins: [{
package: 'protractor-console-plugin',
failOnWarning: {Boolean} (Default - false),
failOnError: {Boolean} (Default - true),
logWarnings: {Boolean} (Default - true),
exclude: {Array of strings and regex} (Default - [])
}]
.