2015-03-11 7 views
11

Ich implementiere den Gradmesser-Test für eine Web-App. Ich habe eine Google-Suche durchgeführt, aber ich habe eine Zip-Datei erstellt. Ich möchte alle Spezifikationen erstellen, die ich zum Schließen des Browsers erstellt habe, nachdem der gesamte Test in dieser spezifischen Spezifikationsdatei ausgeführt wurde und dann mit der nächsten -Spec-Datei fortgefahren wird. usw. Ich habe Dinge wie "beforeAll" und "afterAll", aber Jasmine erkennt diese Methoden nicht. Ein Punkt in die richtige Richtung wäre toll!Wie man sozusagen Browser neu startet oder schließt nach jedem Winkelmesser - spez. Test

beschreiben ('ich später sinnvoll hier setzen etwas mehr wird :)', function() {

//not sure if this method actually exist in Jasmine 
afterAll(function() { 
    //restart browser or something of the nature 
}); 

it('should do stuff', function() { 

}); 

it('do stuff', function() { 

}); 

});

Browser sollte dann schließen und dann wieder öffnen, um die nächste Spezifikation auszuführen.

+0

Können Sie einen Code angeben, den Sie bereits ausprobiert haben und wo Sie Probleme haben? – SaschaM78

+0

Ich kann Arbeit nicht regeln lol. Ich füge ein überflogenes Beispiel hinzu. –

Antwort

7

über Browser-Neustart zwischen den Tests Sprechen, gibt es eine entsprechende Konfigurationsoption:

// If true, protractor will restart the browser between each test. 
// CAUTION: This will cause your tests to slow down drastically. 
restartBrowserBetweenTests: false, 

Set es true.

FYI, ist die anfängliche Feature Anfrage:


beforeAll und afterAll in jasmine-2.x gebaut werden. Um sie zu arbeiten, müssen Sie jasmine2 as a testing framework im protractor config einzustellen:

exports.config = { 
    ... 
    framework: 'jasmine2', 
    ... 
} 

Für jasmine-1.x gibt es einen Drittanbieter jasmine-beforeAll Paket, das genau die gleiche Funktionalität zur Verfügung stellt.

+0

ok cool, ich gebe das eine Chance :) –

+0

Das hat super funktioniert! Würden Sie zufällig wissen, ob es möglich ist, den Browser zu öffnen und zu schließen, bevor und nachdem jede Spezifikationsdatei ausgeführt wurde? –

+0

@JosephFreeman großartig! Bitte sehen Sie das Update, hoffe, das ist, was Sie suchen. – alecxe

3

In protractor.conf.js:

capabilities:{ 
    'shardTestFiles': true, 
    'maxInstances': 1 
} 

Dadurch wird der Browser mit jeder .spec-Datei öffnen und schließen, aber Sie können einige der Reporting-Funktionen von Standard-Plugins verlieren. Wenn shardTestFiles false ist, öffnet es den Browser, führt onPrepare aus, führt alle Tests seriell aus und schließt dann den Browser.

Verwandte Themen