Testy dwóch róż – czyli Lancasterowie i Yorkowie poznają psychologię testowania

aromanWystÄ…pienie zÅ‚ożone bÄ™dzie z 3 zasadniczych części. W części pierwszej omówiÄ™ kilka mechanizmów psychologicznych o  niezwykle silnych implikacjach praktycznych dla pracy testerów. Pokażę z jakich zasad psychologicznych (!) wynika efektywność formalnych technik projektowania testów. Postaram siÄ™ również uzasadnić empirycznie, dlaczego tak ważne jest porozumiewanie siÄ™ z klientem w jÄ™zyku biznesu. Zobaczymy również dlaczego jednÄ… z kluczowych cech testera musi być kreatywność, nieszablonowe myÅ›lenie i znajomość… logiki!

W trakcie prezentacji przeprowadzę na słuchaczach kilka prostych eksperymentów, które (mam nadzieję, że z sukcesem) stanowić będą praktyczne potwierdzenie głoszonych tez. Wyniki eksperymentów pozwolą na sformułowanie kilku reguł postępowania, wspomagających analityczne podejście testera do rozwiązywania problemów. Zobaczymy jak wiele korzyści może przynieść stosowanie tych reguł w praktyce, poprzez analizę rzeczywistego zagadnienia testowego.

Inspiracją dla problemu jest tzw. wojna dwóch róż, czyli 30-letnia walka o władzę prowadzona w XV wieku w Anglii przez dwa potężne rody – Lancasterów i Yorków. Przyczyn tej wojny szukać można o wiele wcześniej, w XIV wieku, kiedy to Henryk IV zgłosił (skutecznie) pretensje do korony, choć wcale nie był prawowitym następcą tronu.

W drugiej części prelekcji rozważymy zatem tzw. problem sukcesji, czyli zagadnienie polegające na wskazaniu następcy tronu na podstawie drzewa genealogicznego. Na przykładzie tego zadania zobaczymy jak wspomniane wcześniej mechanizmy psychologiczne oraz wykorzystanie formalnych technik projektowania testów może nam pomóc w profesjonalnym tworzeniu efektywnych przypadków testowych. Przeanalizujemy zalety i wady takiego podejścia oraz zastanowimy się, w jakich okolicznościach może być ono skuteczne, a w jakich przyniesie więcej szkody, niż pożytku.

Podczas prezentacji bÄ™dÄ™ chciaÅ‚ pokazać metodyczne podejÅ›cie do problemu, przy okazji ilustrujÄ…c jak może wyglÄ…dać podejÅ›cie analityczne „w praktyce”. Zobaczymy jak sensownie zabrać siÄ™ do rozwiÄ…zania dosyć skomplikowanego koncepcyjnie zadania tak, by z jednej strony nie pominąć żadnych istotnych szczegółów i stworzyć efektywny zbiór testów, a z drugiej – nie pogubić siÄ™ w gÄ…szczu wymagaÅ„, warunków i ograniczeÅ„. Mam nadziejÄ™, że przekonam również sÅ‚uchaczy, iż znajomość (i umiejÄ™tność wykorzystania) różnego rodzaju mniej lub bardziej formalnych narzÄ™dzi może być bardzo przydatna dla testera i znacznie uÅ‚atwić mu życie.

W trzeciej, ostatniej części prezentacji zobaczymy ciekawÄ… metodÄ™ wykorzystania biaÅ‚oskrzynkowych technik pokrycia. Zwykle techniki te kojarzymy z pracÄ… deweloperów, którzy mierzÄ… pokrycie kodu testami jednostkowymi. Zobaczymy jednak, że techniki biaÅ‚oskrzynkowe z powodzeniem można stosować również w „prawdziwych”, wysokopoziomowych testach (np. systemowych). W naszym przypadku pokrycie nie bÄ™dzie dotyczyÅ‚o kodu źródÅ‚owego, lecz modelu dziaÅ‚ania algorytmu. Pokażę, jak techniki biaÅ‚oskrzynkowe mogÄ… być pomocne w testowaniu opartym na modelu. Technika ta jest wciąż maÅ‚o znana, choć z powodzeniem stosowana np. w przemyÅ›le motoryzacyjnym, gdzie staÅ‚a siÄ™ de facto standardem w zakresie podejÅ›cia do testów.

W trakcie prelekcji nie będę odwoływał się do żadnych konkretnych aplikacji czy języków programowania. Skupię się na abstrakcyjnym problemie i sposobie jego rozwiązania. Celem prezentacji nie jest bowiem opisanie konkretnego rozwiązania technologicznego, lecz coś moim zdaniem o wiele ważniejszego i ponadczasowego – pokazanie potęgi racjonalnego testerskiego myślenia.


Tagged under:

Program konferencji

Czego spodziewać się po TestWarez 2017

TwitterFacebookLinkedInGoogle+