Automatyzacja testów
akceptacyjnych
Leszek Kantorek
• Testy jednostkowe
• Testy akceptacyjne
• Narzędzie FitNesse
• Narzędzie Ranorex
• Zorientowane na kod
• Weryfikują funkcjonalność z punktu widzenia
programisty
• Red– Green– Refactor
•Czy budujemy produkt dobrze?
• Zorientowane na dane
• Weryfikują funkcjonalność z punktu
widzenia klienta
• Describe – Demonstrate – Develop - Repeat
•Czy budujemy dobry produkt?
• Jako użytkownik chciałbym uzyskać dostęp
do systemu poprzez podanie poprawnej
nazwy użytkownika oraz hasła. System
powinien porównać wprowadzone
informacje z przechowywanymi w bazie
danych.
Przykłady logowania
Nazwa
użytkownika
Hasło
Wynik
Adam
p@sswo!d
Poprawne
Michal
cos
Niepoprawne
Kryteria akceptacji
+
Przykłady (
dane + scenariusz użycia
)
=
Test akceptacyjny
class
Test:Fixture
{
}
SYSTEM UNDER TEST
Test table1
1
1
1
0
Test table1
1
1
1
0
• FIT - Framework for Integrated Testing
Biblioteka wspomagająca tworzenie testów
akceptacyjnych
"Pomost" pomiędzy regułami biznesowymi, a
napisanym kodem
• FitNesse
Serwer WWW nie wymagający konfiguracji
Strona Wiki do zarządzania testami
• FitNesse .NET
„Test runner” dla platformy .NET
• Przykłady zastosowań
Wymaganie 2
Wymaganie 1
Wymaganie 1
Wymaganie 2
Wymaganie N
30 dni
24 h
Testy
akceptacyjn
e
Testy
jednostkow
e
Wykonywalna
dokumentacja
•Jakość od pierwszej linii kodu
•Walidacja tworzonego API
•Bezpieczeństwo podczas zmian
•Dziel i zwyciężaj
•Pewność = Produktywność
•Światełko na końcu tunelu
• Dziękuję za uwagę