SpecFlow: Szenario Skizzieren Beispiele

Ich gerade zu arbeiten anfange mit SpecFlow und wirklich, wie Sie das tool. Jedoch bin ich über einige Fragen in Bezug auf die Beispiel-Daten-Eingänge in das Szenario Skizziert.

Einfach Fragen, wenn was ist, ich bin mit normal ist oder ob es einen trick, um es.

Ich bin mit C# Visual Studio 2013 und schreiben eine MVC-App mit der Unterstrich-Stil Schritt-definition. Ich habe auch versucht, den regulären Ausdruck, der Stil aber immer noch ähnliche Probleme.

Also das Problem ist ich bin die Bereitstellung von Benutzername, Passwort etc. als Parameter einschließlich sample-Daten in meinen Beispielen. Es scheint, dass die folgenden Bedingungen Auftritt: -

  1. Ich muss "" um die Parameter, wenn 1. die Erzeugung dem Szenario, sonst wird es nicht abgeholt, da ein parameter überhaupt. Wenn jedoch die übergabe von Daten in den Beispielen bekomme ich ein "/" am Ende der übergebenen Daten. Wenn ich gehen Sie zurück zu dem Szenario, das ich dann entfernen Sie die "" um den parameter. Das ist ein wenig frustrierend, aber wenn das der beste Weg, damit umzugehen, kann ich damit Leben. Nur Frage mich, wenn jemand irgendwelche Ratschläge auf diesen Punkt.
  2. Das nächste Problem bezieht sich auf die Daten selbst. Es erscheint, wenn ich irgendwelche Zeichen wie @ oder & etc in meinen Daten, dann teilt Sie, dass die Daten an diesem Punkt an und führt Sie zum nächsten parameter, so bekomme ich falsche Daten zugeführt werden.

Ich habe meinen code unten - wenn jemand irgendwelche Vorschläge oder Ressourcen zu betrachten, die würde geschätzt.

Funktion Datei
Feature: AccountRegistration
Um Mojito Dienstleistungen in meiner organisation
Als Gast-Benutzer
Ich möchte ein Konto erstellen, die mit der Verwaltung privelages

Scenario Outline: Register with valid details
    Given I am on the registration page
        And I have completed the form with <email> <organisation> <password> and <passwordConfirmation>
    When I have clicked on the register button
    Then I will be logged in as <username>
        And my account will be assigned the role of <role>

        Examples: 
        | email     | organisation | password  | passwordConfirmation | username  | role  |
        | usernamea | Bytes        | password1 | password1            | usernamea | Admin |
        | usernameb | Bytes        | password2 | password2            | usernameb | Admin |
        | usernamec | Bytes        | password3 | password3            | usernamec | Admin |
        | usernamed | Bytes        | password4 | password4            | usernamed | Admin |
        | usernamee | Bytes        | password5 | password5            | usernamee | Admin |

Scenario Outline: Register with invalid details
    Given I am on the registration page
        And I have completed the form with <email> <organisation> <password> and <passwordConfirmation>
    When I have clicked on the register button
    Then I will get an error message

        Examples: 
        | email             | organisation    | password   | passwordConfirmation | 
        | Jonesa@mojito.com | Bytes           | 1LTIuta&Sc | wrongpassword      | 
        | Jonesb@mojito.com | Bytes           | 1LTIuta&Sc | 1LTIuta&Sc         | 
        | Jonesc@mojito.com | No Organisation | 1LTIuta&Sc | 1LTIuta&Sc         | 

Schritte Erzeugten Datei

[Binding]
    public class AccountRegistrationSteps
    {
        [Given]
        public void Given_I_am_on_the_registration_page()
        {
            ScenarioContext.Current.Pending();
        }

        [Given]
        public void Given_I_have_completed_the_form_with_usernamea_Bytes_password_P0_and_password_P1(int p0, int p1)
        {
            ScenarioContext.Current.Pending();
        }

        [Given]
        public void Given_I_have_completed_the_form_with_Jonesa_mojito_com_Bytes_P0_LTIuta_Sc_and_wrongpassword(int p0)
        {
            ScenarioContext.Current.Pending();
        }

        [When]
        public void When_I_have_clicked_on_the_register_button()
        {
            ScenarioContext.Current.Pending();
        }

        [Then]
        public void Then_I_will_be_logged_in_as_usernamea()
        {
            ScenarioContext.Current.Pending();
        }

        [Then]
        public void Then_my_account_will_be_assigned_the_role_of_Admin()
        {
            ScenarioContext.Current.Pending();
        }

        [Then]
        public void Then_I_will_get_an_error_message()
        {
            ScenarioContext.Current.Pending();
        }
    }

InformationsquelleAutor ccocker | 2014-08-19

Schreibe einen Kommentar