2016-04-29 2 views
0

Wenn in Szenarios zwei oder mehr Szenarien vorhanden sind, werden alle Schritte des Features für beide weiteren Szenarien ausgeführt.Wie kann man die wiederholte Ausführung von Schritten in Gurken-Feature-Dateien umgehen?

Aber ich brauche eine der Schritt zur Ausführung nur einmal das heißt Login Schritt.

Beispiel:

Scenario Outline: Acceptance page has <Application> logo appearing on top 
    Given I am signing up in <Application>   #I want to run this step only once 
    And I navigate to "Dashboard" page  # I want to run this step only once 
    Then I should see "header logo" exist 
    And I should see "footer" exist 
    And I should expect the following elements to be visible 
     | element     | 
     | Legal      | 
     | Privacy     | 
     | Security     | 
     | Cookies     | 

    Examples: 
     | Application | 
     | Gmail  | 

In oben Feature-Datei, möchte ich nur einmal auf Anwendung anmelden und Rest der Schritte zu überprüfen.

Derzeit für jeden Prüfschritt, passieren Logon Sache wieder und wieder.

Bitte legen nahe, wie kann ich nur einmal Schritt anmelden laufen und mehrere Artikel auf Seite überprüfen.

+0

Sie nicht ausführen müssen 'I, in ' Anmeldung bin für jedes Beispiel? Das ist nicht kompatibel mit dem Ausführen nur einmal, wie Ihr Kommentar sagt. –

+0

Auch, welche Gurken-Implementierung verwenden Sie? Es kann nicht sowohl Gurke-Gurke als auch Gurke sein. –

+0

Ich denke (oder hoffe), dass Sie sich mit der Anmeldung verwechseln. – kiedysktos

Antwort

0

Extrahieren Sie die allgemeinen Schritte und legen Sie sie in eine Background-Anweisung. Der Hintergrund wird vor jedem Ihrer Szenarien, aber nach einem Ihrer Vorhaken ausgeführt.

0

Zuerst @ mikejramsey56 ist direkt über gemeinsame Schritte von Szenarien in den Hintergrund bewegt.

Zweitens können Sie sich auf einer Website einmal im Vorgriff einloggen, wie Mike vorgeschlagen hat, aber Sie werden nicht an einem guten Ort sein, wenn der Browser Sie aus irgendeinem Grund abmeldet. Tests sollten unabhängig sein.

Drittens, Gurke ist ein großartiger Ort, um das Niveau der Komplexität zu zeigen, die Sie zeigen müssen, was erwartet wird. Sie können Schritte in einem Schritt kombinieren. Wenn Sie das tun, sollten Sie den Code aus dem Schritt ziehen und in eine separate Methode einfügen, und rufen Sie dann die Methode aus dem Schritt auf. Sie könnten einen Schritt haben, der mehrere Methoden aufruft, beispielsweise das Überprüfen der allgemeinen Seitenkomponenten.

Viertens, ich hoffe, Sie üben, weil Sie sicherstellen, dass ein Header & Fuß existieren keine Verhaltensweisen verwenden. Benutzer möchten Dinge tun und Dinge sehen, die in einem div oder frame an der Spitze sein können, aber sie wollen niemals einen div oder frame sehen.

Verwandte Themen