Od (web)aplikacji biznesowych po (web)game dev Testowanie i spełnianie oczekiwań
Kim jestem ? ● Absolwent ETI ● E-sport ● TouK ● Warcry (gaming community) ● Project Ark
Gry "przeglądarkowe"
Rich Internet Application (RIA)
Oczekiwania (web)gracza
Oczekiwania biznesu
User Experience ● Wow ! ● Wanderer ● Want to stay, and want more !
Testy
Testy ręczne vs automatyczne
Jednostkowe czy integracyjne ?
Automatyzacja testów
Webapp testing checklist ● Functionality testing ● Usability testing ● Interfaces testing ● Compatibility testing ● Performance testing ● Security testing
Narzędzia ● Przeszłość ● JSUnit, WebInject ● Teraźniejszość ● Selenium, SOA Test ● Przyszłość ? ● qUnit, TestSwarm
Warto wiedzieć ● Test Driven Development (TDD) ● Red Green Refactor ● Black Box Testing ● Smoke Tests ● Testy jednorazowe ● Alfa testy, Beta testy
Prawda czy fałsz ? ● Nie testuj swojego własnego kodu, najlepiej zleć to innej osobie
Prawda czy fałsz ? ● Im dłużej testujesz daną aplikację tym lepiej znasz jej domenę oraz samą aplikację ergo stajesz się coraz lepszym testerem
Prawda czy fałsz ? ● Większa liczba testów jednostkowych przekłada się na szybszą i łatwiejszą modyfikację fragmentów kodu aplikacji
Prawda czy fałsz ? ● Idealnie przeszkolona i liczna drużyna testerów pozwala na szybszą poprawę i rozwój aplikacji
Prawda czy fałsz ? ● Wysoki poziom pokrycia testami sprawia że deweloperzy chętniej modyfikują aplikację, zwiększa się ich inicjatywa w jej ulepszaniu
Prawda czy fałsz ? ● Im większa grupa testerów tym większy feedback dotyczący działania samej aplikacji ergo lepsza używalność aplikacji
Prawda czy fałsz ? ● Skoro z testami jest tyle zachodu to może lepiej w ogóle ich nie robić ?
Podsumowanie ● Dobierz swój model testowania ● Testy automatyczne – oszczędność czasu – niezawodność implementacji – wczesne ostrzeganie ● Testy ręczne – nietypowe błędy – "user experience" & "usability" ● Ucz się korzystać z obu podejść !!!
Dzięki za uwagę ! Żaden test nie ucierpiał przy tworzeniu tej prezentacji :)