SlideShare a Scribd company logo
Session Based Testing
Czyli jak efektywniej testować eksploracyjnie
Autor: Rafał Nikiel
Gdańsk, 15 października 2013

© Rule Financial 2012

Confidential

1
AGENDA

Wprowadzenie
Elementy i zasady testowania w sesjach
Zarządzanie testami w sesjach
Plusy i minusy rozwiązania
SBT w wersji Rule Financial
Podsumowanie
Q&A

2
Wprowadzenie

Jak zrodziło się podejście SBT

Testy eksploracyjne - krótka charakterystyka:

• Jednoczesna nauka, projektowanie, wykonywanie i interpretacja
testów.

• Każdy na tej sali świadomie lub nieświadomie testuje
eksploracyjnie.
• Wzrost popularności wraz ze wzrostem popularności metodyk
zwinnych.

• Prosty przykład ich przewagi nad standardowymi testami
skryptowymi (miejsce zbrodni – tester jako detektyw).

3
Wprowadzenie

Jak zrodziło się podejście SBT

Testy eksploracyjne - problemy:

• Minimalizacja pracy z dokumentacją i częste zmiany w procesie
testowym (w większości przypadków podążamy za przeczuciem, a
nie ustalonym planem) prowadzą do sytuacji, w której tracimy
przejrzystość tego, co robimy.
• Co jeśli klient wymaga raportów z testów ?
• Jak określić pokrycie testami eksploracyjnymi ?

• Jak monitorować postęp testów? (czy wystarczą codzienne
spotkania z testerami ?)

4
Wprowadzenie

Jak zrodziło się podejście SBT

SBT - geneza:

• Autor: James i Jonathan Bach
• Czas: Rok 2000 – skomplikowany projekt dla wymagającego klienta
• Problem – wyzwanie – realizacja

5
Elementy i zasady testowania w sesjach
Dlaczego „w sesji” ?

Definicja

Testowanie w sesjach to metodyka polegająca na połączeniu testowania
eksploracyjnego z elementami raportowania, zapewniająca lepsze możliwości
zarządzania i kontrolowania procesu testowego oraz dostarczania metryk
testowych.

 Koncentracja
 Konkretyzacja
Dlaczego
sesja?

 Mierzalne

odcinki czasu – podstawowa jednostka pracy testera

 Odseparowanie
 Lepsze

testowania od aktywności nie-testowych

monitorowanie procesu

 Przykład

6
Elementy i zasady testowania w sesjach
Podstawowe elementy sesji

Misja

Tester

Jest to celzadaniescenariusz, który będzie realizowany w ramach tej sesji. – Przykłady ?

Imię i nazwisko, nazwa użytkownika lub inny identyfikator pozwalający określić osobę realizującą daną sesję.

Czas
trwania

Długość sesji zależy od złożoności misji, ale powinna zawierać się w przedziale 45 - 120 min. Domyślna
długość w większości narzędzi to 90 min. Może być wydłużana jeśli zachodzi taka potrzeba.

Metryka
TBS

T – tests, B – bugs, S – setup
Jest to informacja o procentowym podziale czasu sesji na poszczególne jej składniki.

Notatki
Misja vs
eksploracja

Esencja całej sesji. Tester spisuje swoje aktywności, które mogą być podzielone na różne poziomy (błędy,
dane testowe, pytania, pomysły, napotkane problemy, komentarz, konfiguracja). Przykładowy raport.
Jaki powinien być poziom szczegółowości raportu ?

Procentowy podział czasu poświęcony na aktywności związane i nie związane z celem sesji.
Po co w zasadzie to mierzymy i dlaczego mielibyśmy robić coś, co nie było określone jako cel naszej sesji ?

7
Elementy i zasady testowania w sesjach
Podstawowe cechy i reguły SBT

Nieprzerywalność

Weryfikowalność

Dobrze ustalony cel

Ilość sesji

Nie trzymajmy się kurczowo misji

8
Session Based Test Management

Czyli testowanie w sesjach z perspektywy kierownika zespołu

Na podstawie analizy sesji
swojego zespołu (jak to
zrealizować ?) kierownik może:

Monitorować proces testowego

Szybko dowiedzieć się o problemach
zespołu

Monitorować rozwój członków zespołu

Ustalać kolejne sesje i ich priorytety

Przedstawiać klientowi raporty

Estymować kolejne przedsięwzięcia testowe

9
Narzędzia wspomagające testowanie w sesjach
Podsumowanie narzędzi

 Czy jest możliwe zrealizowanie wdrożenia SBT bez użycia narzędzi ?
 Poniżej przedstawiam krótkie subiektywne podsumowanie wybranych narzędzi, które próbowałem wdrożyć w
swoim zespole.

Nazwa

Session Creator

Session Tester

Rapid Reporter

Link

Opis

Ocena

Desktopowe narzędzie napisane w Java. Możliwość połączenia do
oryginalnego narzędzia napisanego przez Bacha. Spore możliwości
konfiguracyjne. Gorzej wyglądają raporty z sesji.

3

http://sessiontester.openqa.org/

Desktopowe narzędzie napisane w Java. Brak możliwości
konfiguracyjnych. Bardzo nieczytelne raporty. W zasadzie jedyny
plus to możliwość pauzowania sesji.

1

http://testing.gershon.info/reporter/

Desktopowe narzędzie napisane w C#WPF. Minimalistyczny
interfejs. Bardzo duże możliwości konfiguracyjne. Możliwość
agregowania sesji i prezentowania raportów w różnych formatach.
Możliwość zrzutów ekranu i wklejania większej ilości tekstu w
trakcie sesji.

5

https://sites.google.com/site/sessio
ncreator/

10
Narzędzia wspomagające testowanie w sesjach
Prezentacja narzędzia Rapid Reporter

11
Częste problemy podczas wdrażania SBT
Jak je rozwiązać ?

Problem

Ciężko wyegzekwować
nieprzerywalność sesji.
Dotyczy zarówno testera, jak i
zespołu programistów.
Zbyt zgrubne lub za bardzo
szczegółowe raporty z sesji.
Kierownik nie ma czasu na
przeglądy sesji. Spada jakość
raportów.
Cele sesji zostały źle
zdefiniowane i w trakcie ich
wykonywania okazuje się, że
problemy znajdują się zupełnie
w innym miejscu aplikacji.

Rozwiązanie


Przeanalizować czynniki przerywające i spróbować je
ograniczyć do minimum. Poinformować zespół
programistów o wdrażanym podejściu. Skrócić sesje.
W ostateczności pauzować sesje na czas przerwania.


Kierownik powinien na bieżąco robić przeglądy sesji,
żeby wypracować wspólnie z zespołem „kompromis
biurokracyjny”.


Można zaangażować bardziej doświadczonych
testerów, żeby przeglądali raporty mniej
doświadczonych.


Po zakończonej sesji można zmienić jej cel tak, żeby
odzwierciedlał rzeczywiste aktywności podjęte w jej
trakcie.

12
SBT w wykonaniu Rule Financial

Co było przed ?
Dlaczego SBT ?

Podjęte działania

Wybór narzędzia

Wnioski z wdrożenia

13
Podsumowanie

Co warto zapamiętać z tej prezentacji ?

Podstawową jednostką pracy testera w SBT
jest sesja
Co powinny zawierać raporty z sesji ?

Przeglądy sesji – rola kierownika

Używajmy narzędzi

Testowanie w sesjach – złoty środek ?

14
Bibliografia

 http://vimeo.com/14761201 - video
 http://www.infoq.com/presentations/Session-Based-Test-Management - video
 http://staqs.com/docs/sbtm/
 http://www.satisfice.com/sbtm/
 http://www.satisfice.com/articles/sbtm.pdf
 http://swtester.blogspot.com/2010/09/using-ms-outlook-to-help-support-sbtm.html#more
 http://www.quardev.com/content/whitepapers/SBTMLite_samkalman.pdf

15
Q&A

16

More Related Content

Similar to ŁódQA - Session based testing

Podstawy testowania oprogramowania INCO 2023.pptx
Podstawy testowania oprogramowania INCO 2023.pptxPodstawy testowania oprogramowania INCO 2023.pptx
Podstawy testowania oprogramowania INCO 2023.pptxKatarzyna Javaheri-Szpak
 
Jak zostać zwinnym (Agile) analitykiem
Jak zostać zwinnym (Agile) analitykiemJak zostać zwinnym (Agile) analitykiem
Jak zostać zwinnym (Agile) analitykiemMariusz Opaliński
 
Efektywne Testy Oprogramowania w Środowisku Scrumowym
Efektywne Testy Oprogramowania w Środowisku ScrumowymEfektywne Testy Oprogramowania w Środowisku Scrumowym
Efektywne Testy Oprogramowania w Środowisku ScrumowymTestPro
 
Edukacja testerska na Quality in IT
Edukacja testerska na Quality in ITEdukacja testerska na Quality in IT
Edukacja testerska na Quality in ITRadoslaw Smilgin
 
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin KubeckiTGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin KubeckiTrójmiejska Grupa Testerska
 
SkładQA 2018 - Daniel Dec
SkładQA 2018 - Daniel DecSkładQA 2018 - Daniel Dec
SkładQA 2018 - Daniel Deckraqa
 
Bezstratna kompresja listy przypadków testowych
Bezstratna kompresja listy przypadków testowychBezstratna kompresja listy przypadków testowych
Bezstratna kompresja listy przypadków testowychPiotr Piotrowski
 
Testing dojo po polsku (Testing dojo in Polish)
Testing dojo po polsku (Testing dojo in Polish)Testing dojo po polsku (Testing dojo in Polish)
Testing dojo po polsku (Testing dojo in Polish)Łukasz Morawski
 
Frameworki agilowe w obszarze testow - Monika Braun
Frameworki agilowe w obszarze testow - Monika BraunFrameworki agilowe w obszarze testow - Monika Braun
Frameworki agilowe w obszarze testow - Monika BraunWomen in Technology Poland
 
Bartek Mozyrko, Testing methods for mobile applications
Bartek Mozyrko, Testing methods for mobile applicationsBartek Mozyrko, Testing methods for mobile applications
Bartek Mozyrko, Testing methods for mobile applicationsIxDA_Poznan
 
Testowanie aplikacji mobilnych (IxDA 2012)
Testowanie aplikacji mobilnych (IxDA 2012) Testowanie aplikacji mobilnych (IxDA 2012)
Testowanie aplikacji mobilnych (IxDA 2012) Bartosz Mozyrko
 
Zapewnienie jakości w Scrum
Zapewnienie jakości w ScrumZapewnienie jakości w Scrum
Zapewnienie jakości w ScrumKrystian Kaczor
 
Krzysztof Moskwa - Podstawy metod zwinnych: jak to działa? Story points, czyl...
Krzysztof Moskwa - Podstawy metod zwinnych: jak to działa? Story points, czyl...Krzysztof Moskwa - Podstawy metod zwinnych: jak to działa? Story points, czyl...
Krzysztof Moskwa - Podstawy metod zwinnych: jak to działa? Story points, czyl...PMI Szczecin
 
Jak efektywnie podejść do certyfikacji w AWS?
Jak efektywnie podejść do certyfikacji w AWS?Jak efektywnie podejść do certyfikacji w AWS?
Jak efektywnie podejść do certyfikacji w AWS?The Software House
 
Zasady technicznej organizacji projektów programistycznych
Zasady technicznej organizacji projektów programistycznychZasady technicznej organizacji projektów programistycznych
Zasady technicznej organizacji projektów programistycznychsztywny
 
Strategie automatyzacji testow
Strategie automatyzacji testowStrategie automatyzacji testow
Strategie automatyzacji testowWiktor Żołnowski
 

Similar to ŁódQA - Session based testing (20)

Podstawy testowania oprogramowania INCO 2023.pptx
Podstawy testowania oprogramowania INCO 2023.pptxPodstawy testowania oprogramowania INCO 2023.pptx
Podstawy testowania oprogramowania INCO 2023.pptx
 
Praktyki techniczne
Praktyki technicznePraktyki techniczne
Praktyki techniczne
 
Jak zostać zwinnym (Agile) analitykiem
Jak zostać zwinnym (Agile) analitykiemJak zostać zwinnym (Agile) analitykiem
Jak zostać zwinnym (Agile) analitykiem
 
Efektywne Testy Oprogramowania w Środowisku Scrumowym
Efektywne Testy Oprogramowania w Środowisku ScrumowymEfektywne Testy Oprogramowania w Środowisku Scrumowym
Efektywne Testy Oprogramowania w Środowisku Scrumowym
 
Edukacja testerska na Quality in IT
Edukacja testerska na Quality in ITEdukacja testerska na Quality in IT
Edukacja testerska na Quality in IT
 
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin KubeckiTGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
 
university day 1
university day 1university day 1
university day 1
 
SkładQA 2018 - Daniel Dec
SkładQA 2018 - Daniel DecSkładQA 2018 - Daniel Dec
SkładQA 2018 - Daniel Dec
 
Bezstratna kompresja listy przypadków testowych
Bezstratna kompresja listy przypadków testowychBezstratna kompresja listy przypadków testowych
Bezstratna kompresja listy przypadków testowych
 
Testing dojo po polsku (Testing dojo in Polish)
Testing dojo po polsku (Testing dojo in Polish)Testing dojo po polsku (Testing dojo in Polish)
Testing dojo po polsku (Testing dojo in Polish)
 
Testowanie automatyczne 2024 INCO Academy
Testowanie automatyczne 2024 INCO AcademyTestowanie automatyczne 2024 INCO Academy
Testowanie automatyczne 2024 INCO Academy
 
Frameworki agilowe w obszarze testow - Monika Braun
Frameworki agilowe w obszarze testow - Monika BraunFrameworki agilowe w obszarze testow - Monika Braun
Frameworki agilowe w obszarze testow - Monika Braun
 
Bartek Mozyrko, Testing methods for mobile applications
Bartek Mozyrko, Testing methods for mobile applicationsBartek Mozyrko, Testing methods for mobile applications
Bartek Mozyrko, Testing methods for mobile applications
 
Testowanie aplikacji mobilnych (IxDA 2012)
Testowanie aplikacji mobilnych (IxDA 2012) Testowanie aplikacji mobilnych (IxDA 2012)
Testowanie aplikacji mobilnych (IxDA 2012)
 
Kwestionowanie ISTQB
Kwestionowanie ISTQBKwestionowanie ISTQB
Kwestionowanie ISTQB
 
Zapewnienie jakości w Scrum
Zapewnienie jakości w ScrumZapewnienie jakości w Scrum
Zapewnienie jakości w Scrum
 
Krzysztof Moskwa - Podstawy metod zwinnych: jak to działa? Story points, czyl...
Krzysztof Moskwa - Podstawy metod zwinnych: jak to działa? Story points, czyl...Krzysztof Moskwa - Podstawy metod zwinnych: jak to działa? Story points, czyl...
Krzysztof Moskwa - Podstawy metod zwinnych: jak to działa? Story points, czyl...
 
Jak efektywnie podejść do certyfikacji w AWS?
Jak efektywnie podejść do certyfikacji w AWS?Jak efektywnie podejść do certyfikacji w AWS?
Jak efektywnie podejść do certyfikacji w AWS?
 
Zasady technicznej organizacji projektów programistycznych
Zasady technicznej organizacji projektów programistycznychZasady technicznej organizacji projektów programistycznych
Zasady technicznej organizacji projektów programistycznych
 
Strategie automatyzacji testow
Strategie automatyzacji testowStrategie automatyzacji testow
Strategie automatyzacji testow
 

ŁódQA - Session based testing

  • 1. Session Based Testing Czyli jak efektywniej testować eksploracyjnie Autor: Rafał Nikiel Gdańsk, 15 października 2013 © Rule Financial 2012 Confidential 1
  • 2. AGENDA Wprowadzenie Elementy i zasady testowania w sesjach Zarządzanie testami w sesjach Plusy i minusy rozwiązania SBT w wersji Rule Financial Podsumowanie Q&A 2
  • 3. Wprowadzenie Jak zrodziło się podejście SBT Testy eksploracyjne - krótka charakterystyka: • Jednoczesna nauka, projektowanie, wykonywanie i interpretacja testów. • Każdy na tej sali świadomie lub nieświadomie testuje eksploracyjnie. • Wzrost popularności wraz ze wzrostem popularności metodyk zwinnych. • Prosty przykład ich przewagi nad standardowymi testami skryptowymi (miejsce zbrodni – tester jako detektyw). 3
  • 4. Wprowadzenie Jak zrodziło się podejście SBT Testy eksploracyjne - problemy: • Minimalizacja pracy z dokumentacją i częste zmiany w procesie testowym (w większości przypadków podążamy za przeczuciem, a nie ustalonym planem) prowadzą do sytuacji, w której tracimy przejrzystość tego, co robimy. • Co jeśli klient wymaga raportów z testów ? • Jak określić pokrycie testami eksploracyjnymi ? • Jak monitorować postęp testów? (czy wystarczą codzienne spotkania z testerami ?) 4
  • 5. Wprowadzenie Jak zrodziło się podejście SBT SBT - geneza: • Autor: James i Jonathan Bach • Czas: Rok 2000 – skomplikowany projekt dla wymagającego klienta • Problem – wyzwanie – realizacja 5
  • 6. Elementy i zasady testowania w sesjach Dlaczego „w sesji” ? Definicja Testowanie w sesjach to metodyka polegająca na połączeniu testowania eksploracyjnego z elementami raportowania, zapewniająca lepsze możliwości zarządzania i kontrolowania procesu testowego oraz dostarczania metryk testowych.  Koncentracja  Konkretyzacja Dlaczego sesja?  Mierzalne odcinki czasu – podstawowa jednostka pracy testera  Odseparowanie  Lepsze testowania od aktywności nie-testowych monitorowanie procesu  Przykład 6
  • 7. Elementy i zasady testowania w sesjach Podstawowe elementy sesji Misja Tester Jest to celzadaniescenariusz, który będzie realizowany w ramach tej sesji. – Przykłady ? Imię i nazwisko, nazwa użytkownika lub inny identyfikator pozwalający określić osobę realizującą daną sesję. Czas trwania Długość sesji zależy od złożoności misji, ale powinna zawierać się w przedziale 45 - 120 min. Domyślna długość w większości narzędzi to 90 min. Może być wydłużana jeśli zachodzi taka potrzeba. Metryka TBS T – tests, B – bugs, S – setup Jest to informacja o procentowym podziale czasu sesji na poszczególne jej składniki. Notatki Misja vs eksploracja Esencja całej sesji. Tester spisuje swoje aktywności, które mogą być podzielone na różne poziomy (błędy, dane testowe, pytania, pomysły, napotkane problemy, komentarz, konfiguracja). Przykładowy raport. Jaki powinien być poziom szczegółowości raportu ? Procentowy podział czasu poświęcony na aktywności związane i nie związane z celem sesji. Po co w zasadzie to mierzymy i dlaczego mielibyśmy robić coś, co nie było określone jako cel naszej sesji ? 7
  • 8. Elementy i zasady testowania w sesjach Podstawowe cechy i reguły SBT Nieprzerywalność Weryfikowalność Dobrze ustalony cel Ilość sesji Nie trzymajmy się kurczowo misji 8
  • 9. Session Based Test Management Czyli testowanie w sesjach z perspektywy kierownika zespołu Na podstawie analizy sesji swojego zespołu (jak to zrealizować ?) kierownik może: Monitorować proces testowego Szybko dowiedzieć się o problemach zespołu Monitorować rozwój członków zespołu Ustalać kolejne sesje i ich priorytety Przedstawiać klientowi raporty Estymować kolejne przedsięwzięcia testowe 9
  • 10. Narzędzia wspomagające testowanie w sesjach Podsumowanie narzędzi  Czy jest możliwe zrealizowanie wdrożenia SBT bez użycia narzędzi ?  Poniżej przedstawiam krótkie subiektywne podsumowanie wybranych narzędzi, które próbowałem wdrożyć w swoim zespole. Nazwa Session Creator Session Tester Rapid Reporter Link Opis Ocena Desktopowe narzędzie napisane w Java. Możliwość połączenia do oryginalnego narzędzia napisanego przez Bacha. Spore możliwości konfiguracyjne. Gorzej wyglądają raporty z sesji. 3 http://sessiontester.openqa.org/ Desktopowe narzędzie napisane w Java. Brak możliwości konfiguracyjnych. Bardzo nieczytelne raporty. W zasadzie jedyny plus to możliwość pauzowania sesji. 1 http://testing.gershon.info/reporter/ Desktopowe narzędzie napisane w C#WPF. Minimalistyczny interfejs. Bardzo duże możliwości konfiguracyjne. Możliwość agregowania sesji i prezentowania raportów w różnych formatach. Możliwość zrzutów ekranu i wklejania większej ilości tekstu w trakcie sesji. 5 https://sites.google.com/site/sessio ncreator/ 10
  • 11. Narzędzia wspomagające testowanie w sesjach Prezentacja narzędzia Rapid Reporter 11
  • 12. Częste problemy podczas wdrażania SBT Jak je rozwiązać ? Problem Ciężko wyegzekwować nieprzerywalność sesji. Dotyczy zarówno testera, jak i zespołu programistów. Zbyt zgrubne lub za bardzo szczegółowe raporty z sesji. Kierownik nie ma czasu na przeglądy sesji. Spada jakość raportów. Cele sesji zostały źle zdefiniowane i w trakcie ich wykonywania okazuje się, że problemy znajdują się zupełnie w innym miejscu aplikacji. Rozwiązanie  Przeanalizować czynniki przerywające i spróbować je ograniczyć do minimum. Poinformować zespół programistów o wdrażanym podejściu. Skrócić sesje. W ostateczności pauzować sesje na czas przerwania.  Kierownik powinien na bieżąco robić przeglądy sesji, żeby wypracować wspólnie z zespołem „kompromis biurokracyjny”.  Można zaangażować bardziej doświadczonych testerów, żeby przeglądali raporty mniej doświadczonych.  Po zakończonej sesji można zmienić jej cel tak, żeby odzwierciedlał rzeczywiste aktywności podjęte w jej trakcie. 12
  • 13. SBT w wykonaniu Rule Financial Co było przed ? Dlaczego SBT ? Podjęte działania Wybór narzędzia Wnioski z wdrożenia 13
  • 14. Podsumowanie Co warto zapamiętać z tej prezentacji ? Podstawową jednostką pracy testera w SBT jest sesja Co powinny zawierać raporty z sesji ? Przeglądy sesji – rola kierownika Używajmy narzędzi Testowanie w sesjach – złoty środek ? 14
  • 15. Bibliografia  http://vimeo.com/14761201 - video  http://www.infoq.com/presentations/Session-Based-Test-Management - video  http://staqs.com/docs/sbtm/  http://www.satisfice.com/sbtm/  http://www.satisfice.com/articles/sbtm.pdf  http://swtester.blogspot.com/2010/09/using-ms-outlook-to-help-support-sbtm.html#more  http://www.quardev.com/content/whitepapers/SBTMLite_samkalman.pdf 15