2017-07-06 3 views
0

Wir haben ein Winkelmesser-CucumberJS-Framework mit BDD-Feature-Dateien und müssen eine Reihe von Sanity-Tests erstellen, indem die relevanten Szenarien als '@sanity' in Feature-Dateien und Führen Sie nur die Szenarien mit diesem Tag aus.Winkelmesser-CucumberJS - Tagged Szenarien - Browser gestartet für Szenarien nicht markiert

Mit diesem Setup startet der Protractor den Browser für jede Feature-Datei einzeln, prüft, ob er das '@sanity'-Tag enthält und schließt den Browser, wenn das Tag nicht gefunden wurde usw.

Dies wird sehr viel Zeit in Anspruch nehmen, da es fast 200 Feature-Dateien gibt. Daher möchten wir, dass der Browser nur gestartet wird, wenn die Feature-Datei das erforderliche Tag enthält.

Gibt es einen Weg, das zu erreichen.

Config-Datei -

exports.config = { 
    seleniumAddress: 'http://127.0.0.1:4444/wd/hub', 
    framework: 'custom', 
    frameworkPath: require.resolve('protractor-cucumber-framework'), 
    specs: [../features/*.feature] 
    cucumberOpts: { 
     require: [ 
      '../step-definitions/**/*_Steps.js', 
      'generateJsonReport.js' 
     ], 
     format: 'pretty', 
     tags: ['@sanity'], 
    }, 

    multiCapabilities: [{ 
     browserName: 'chrome', 
     shardTestFiles: true, 
    } 
    ], 

    onPrepare: function() { 
     browser.driver.manage().window().setSize(1600, 800); 
    } 
}; 

Antwort

1

Dies aufgrund der Tatsache, nicht möglich ist, dass Sie die Option verwenden shardTestFiles:true, siehe config.

Wenn Sie es deaktivieren oder entfernen, sucht es zuerst alle Dateien (ohne alle Dateien zu analysieren und einen Browser dafür zu öffnen) für Ihr spezifisches Tag und führt nur die Feature-Dateien mit diesem Tag aus.

0

Verwenden tags: '@ geistige Gesundheit', in Conf-Datei Dies wird nur Sanity Wählfunktionen

+0

immer noch das gleiche Ergebnis. Wie unterscheidet sich das Hinzufügen von Tags zur Konfigurationsdatei von der Übergabe über die Befehlszeile? – Manya