Autmomatyczne testy oprogramowania
Po co i na co to komu?
@MichalZalecki
michalzalecki.com
Po co testujemy?
Testy znacząco ułatwiają refaktoryzację i przyczyniają się do mniejszej ilości bugów
Testy są dobrym źródłem informacji, stanowią świetną formę dokumentacji technicznej
Testy w procesie refaktoryzacji przyczyniają się do oszczędności czasu
Testy są pomocne w procesie przenoszenia kodu między aplikacjami
Testy pozytywnie wpływają na kulturę organizacji pracy
Testy to świetny sposób na poznanie nowych narzędzi
Testy idą w parze z dużymi projektami Open Source
Testy jednostkowe
Obejmują najmniejsze funkcjonalne jednostki
(Testy jednostkowe)
Niezależne od dostępu do sieci, bazy danych, systemu pików itd.
(Testy jednostkowe)
Eliminują zależności poprzez makiety
(mock-upy)
(Testy jednostkowe)
Dostarczają szczegółowych informacji
(Testy jednostkowe)
Szybkie w wykonaniu
(Testy jednostkowe)
End-to-End
Testują aplikacje jako całość*, sprawdzają
data-flow między komponentami
(E2E)
Działają w środowisku bliskim produkcyjnemu
(E2E)
Uwzględniają zależności
(E2E)
Informują (tylko)
o wystąpieniu błędu
(E2E)
Dłuższe w wykonaniu od testów jednostkowych
(E2E)
Aplikacja przetestowana!
Czego chcieć wiecej?
Testy integracyjne
Testują tylko współpracę aplikacji z zewnętrznymi usługami
(Testy integracyjne)
Wizualne testy regresyjne
Porównują zmiany w interfejsie użytkownika
(Wizualne testy regresyjne)
Pytania?
Testowanie oprogramowania
By Michał Załęcki
Testowanie oprogramowania
- 1,574