Cześć :)

Jak wiadomo podejście BDD jest podejściem biznesowym, nie rozpisujemy testowania aplikacji krok po kroku tzn.

When I fill name
And I fill last name...

tylko scenariusz ma wyglądać:

When i register in app

i to już pod tym krokiem znajduje się wypełnienie wszystkich danych. Mam jednak pewien problem, jak powinien zostać napisany test który sprawdza brak wypełnienia danych? Czy to ma być jeden globalny scenariusz sprawdzajacy brak wypełnienia wszystkich danych
@Dasad:
Ja preferuję inne podejście. Wyobraź sobie, że masz formularz użytkownika z polami 'name', 'location' i 'number'.
I teraz kolejno:
1. Korzystając z wyrażeń regularnych tworzysz sobie typy dla każdego pola:

@parse.with_pattern(r'\swith\sphone\snumber\s"\d+"')
def parse_phone_number(text):
2. Analogicznie tworzysz sobie typ danych, który będzie obsługiwał wyrazenie 'without phone number'
3. Rejestrujesz taki typ pod odpowiednią nazwą:

register_type( phone_number=parse_phone_number)
4. Używasz tego w stepie jako opcjonalny (!) parametr:

@when('I create new{admin:admin?} user with "{login}"
Potrzebuję porady. Nie mam doświadczenia w pisaniu BDD i dopiero zaczynam przygodę i wiem, że długa droga przede mną. Mam do napisania w Gherkinie TC, który będzie w przyszłości zautomatyzowany. Problem polega na tym, że nie jest to klikanie tylko w appce ale też muszę zmodyfikować URL, który dokonuje zmian w DB. Jednak do rzeczy, mam problem jak zdefiniować zmienną w URL, czy w ogóle można zdefiniować tą zmienną w Gherkinie, np