Jestem nowy w Behavior Driven Development i próbuję się tego nauczyć. Używam MSpec & Watin do testów akceptacyjnych i MSpec do testów jednostkowych z ASP.Net MVC 4. Mam prosty scenariusz rejestracji użytkownika.Jak mogę podzielić funkcję "pełnego stosu" na testy akceptacyjne, integracyjne i jednostkowe?
Gdy użytkownik wprowadzi nazwę użytkownika, hasło, e-mail itp i kliknie przycisk rejestru
Należy potwierdzić adres email
Należy sprawdzić, czy nazwa użytkownika już nie istnieje
Należy zarejestrować użytkownika
należy wysłać e-mail powitalny
należy przekierować do strony głównej
są rzeczy, które chcę przetestować, które nie mogą być testowane za pomocą Wa cyny, takie jak wysyłanie wiadomości e-mail, sprawdzanie, czy użytkownik istnieje, czy nie itp. Będą one częścią testów kontrolera. Czy oznacza to, że mój test akceptacyjny będzie tylko taki, że gdy użytkownik zarejestruje się, powinien zostać przekierowany na stronę główną? Jak mogę podzielić cały ten proces na testy?
Jeśli te kontrole są wdrażane w różnych testach i na innym poziomie, to w jaki sposób mogę uzyskać raport podsumowujący, który jest dostępny w MSPEC, że mam wdrożone wszystkie funkcje? Jestem nieco zdezorientowany, jak ludzie złamać te zadania, a następnie, w jaki sposób uzyskać raport zbiorowy itd
Uważam, że odpowiedź zasługuje na książkę :) - Spróbuj przeczytać [Oprogramowanie do wzrostu obiektowego, z przewodnikiem po testach] (http://www.bookdepository.co.uk/Growing-Object-Oriented-Software-Guided-by -Tests-Steve-Freeman/9780321503626). Nie mówi o BDD, ale opisuje najlepsze podejście TDD (które obejmuje testy akceptacyjne). To niesamowita książka. Na wszelki wypadek książka wykorzystuje przykłady Javy, ale nie powinno być zbyt trudno je zrozumieć ani przetłumaczyć na inny język. – Augusto