2016-03-24 12 views
16

Ich versuche, ein bestimmtes Behat Szenario von der Kommandozeile ausgeführt werden, hier ist, was ich tue:Wie fahre ich ein bestimmtes Szenario Behat

$ bin/behat features/features/baseline.feature:3 

Dies ist jedoch nicht das Szenario aufnimmt.

Wenn ich

bin/behat features/features/baseline.feature 

laufen kann ich die gesamte Feature-Datei bekommen zu laufen.

Hier ist, was die Datei aussieht - das Szenario I ist auf der Linie 3 in meinem Texteditor zu laufen bin versucht:

Feature: 
    @api 
    Scenario: Clear cache 
    Given the cache has been cleared 
    When I am on the homepage 
    Then I should get a "200" HTTP response 

    Scenario: 
    Given I am not logged in 
    When I am on the homepage 
    Then I should see the text "We love our users" 

Antwort

23

allererst Sie die gesamte Beschreibung der Merkmalsdatei hinzufügen sollen, wie:

Feature: Home page functionality 
    In order to use application functionality 
    As a website user 
    I need to be able see the home page 

Und Scenario sollte auch eine Beschreibung.

Sie können Behat Szenarien laufen Tags verwenden:

bin/behat --tags @api 

Grundsätzlich könnte jeder Scenario besitzen Tag hat. Behat-Befehl wird versuchen, alle Szenarien mit diesem @api-Tag zu finden.

Auch können Sie Tag für die gesamte Feature-Datei angeben:

@whole-feature-file 
Feature: Home page functionality 

Run Szenario Teil des Namens mit:

bin/behat --name="element of feature" 

Oder nach den @greggles Kommentar:

angeben der Name der Feature-Datei und die Zeilennummer, z

bin/behat features/file.feature:123 

wo 123 die Zeilennummer der Zeile ist wie Scenario: Clear cache

Weitere Details finden behat docs

+5

nicht sicher, ob dies ist ein neu verfügbare Option, aber es ist auch möglich, den Namen der Feature-Datei und die Zeilennummer anzugeben, z 'bin/behat features/file.feature: 123' wobei 123 die Zeilennummer der Zeile ist, wie' Szenario: Cache leeren'. – greggles

+0

Sie können sogar Tests an einer Reihe von Linien durchführen, wie in 'bin/behat --help' erläutert:' * .feature: 10- * ',' * .feature: 10-20' – Gregoire

0

finde ich, dass ich den vollständigen Pfad zum Feature-Datei nur verwenden, wenn eine bestimmte Ausführung Szenario. Zum Beispiel, wenn die Feature-Datei war in/var/www/html/Tests/Funktionen/Features und Ihre in/var/www/html/Tests dann diesen Befehl versuchen:

bin/behat /var/www/html/tests/features/features/baseline.feature:3 
Verwandte Themen