web-dev-qa-db-fra.com

Comment exécuter plusieurs suites de tests de protractor simultanément?

Première tentative d'utilisation de Protractor. Je voudrais pouvoir exécuter plusieurs suites successives ..__ J'ai une application qui est une grande forme angulaire avec différents scénarios . Je m'attendais à des résultats pour chaque scénario et je voudrais entrer une commande et l'exécuter. chaque test . Je pensais pouvoir utiliser des virgules séparées comme:

protractor config.js --suite=rf1_breast, rf1_ovarian, rf1_pancreatic

Mais je reçois l'erreur:

Erreur: plusieurs fichiers de configuration spécifiés

Ce qui est étrange car il n’ya que le seul fichier de configuration qui est dans le répertoire où j’exécute le rapporteur.

Voici mon config.js :

exports.config = {
  seleniumAddress: 'http://localhost:4444/wd/hub',
  capabilities: { 'browserName': 'chrome' },
  framework: 'jasmine2',
  suites: {
    rf1_breast: './rf1-ashkenazi-hboc/Breast/specs/*_spec.js',
    rf1_ovarian: './rf1-ashkenazi-hboc/Ovarian/specs/*_spec.js',
    rf1_bladder_fail: './rf1-ashkenazi-hboc/Bladder-expected-fail/specs/*_spec.js',
    rf1_pancreatic: './rf1-ashkenazi-hboc/Pancreatic/specs/*_spec.js',
    rf1_prostate: './rf1-ashkenazi-hboc/Prostate/specs/*_spec.js'
  },
  onPrepare: function() {
    /* global angular: false, browser: false, jasmine: false */
    browser.manage().window().setSize(1600, 1600);
    // Disable animations so e2e tests run more quickly
    var disableNgAnimate = function() {
      angular.module('disableNgAnimate', []).run(['$animate', function($animate) {
        $animate.enabled(false);
      }]);
    };

    browser.addMockModule('disableNgAnimate', disableNgAnimate);
},
  jasmineNodeOpts: { showColors: true }
};

Existe-t-il un meilleur moyen de gérer chaque scénario?

12
jparry

Ne mettez pas d'espaces après les virgules:

protractor config.js --suite rf1_breast,rf1_ovarian,rf1_pancreatic
17
alecxe

Essayez de faire votre suite composée de plusieurs fichiers. J'ai une ligne pour le test sur lequel je travaille actuellement et une autre avec la suite complète des tests:

exports.config = { allScriptsTimeout: 11000, //specs: ['./e2e/**/*.Page1.ts'], specs: ['./e2e/**/1.Landing.Page.ts','./e2e/**/2.Confirmation.Page.ts','./e2e/**/3.PersonalData.Page.ts','./e2e/**/4.sms.Page.ts','./e2e/**/5.idCard.Page.ts'],

Cela fonctionne pour moi.

0
dragos