Question

Je suis en utilisant le Rapporteur pour tester AngularJS

Je veux vérifier qu'à la fin de l'essai n les exceptions non traitées eu lieu et ont été imprimés pour le navigateur de la console.

Est-il un moyen simple de le faire?

Était-ce utile?

La solution

Si vous utilisez un protacteur avec Jasmine, utilisez le code suivant:

afterEach(function() {
    browser.manage().logs().get('browser').then(function(browserLog) {
        expect(browserLog.length).toEqual(0);
    });
});

Ceci passera le boîtier de test s'il n'y a pas d'erreurs de console.S'il y a des erreurs de console, le test échouera.

instructions sur la manière d'accéder au contenu de la console du navigateur dans le Comment puis-je obtenir la console de la console de navigateur de la FAQ.

Autres conseils

Le rapporteur 2.0.0 a introduit une nouvelle console plugin spécifiquement pour la tâche.

Ajoutez les lignes suivantes au rapporteur de configuration:

plugins: [{
    path: '/path/to/node_modules/protractor/plugins/console/index.js',
    failOnWarning: true,
    failOnError: true
}],

Avec un petit effort, nous pouvons modifier la réponse acceptée pour travailler avec concombre.js, au cas où vous n'utilisez pas de Protractor avec le cadre de test par défaut.

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();
        }
    });
});

Vous voudrez consulter la documentation sur après les crochets , qui sont l'équivalent de concombre avec afterEach de Jasmine.

Comment @Velochy a déclaré qu'il y a maintenant un package propre pour le module: HTTPS: //www.npmjs.com/package/protractor-console-plugin

Vous pouvez l'utiliser dans votre 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 - [])
  }]

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top