Recenzja książki "Practical Model-Based Testing: A Tools Approach"

Recenzja książki "Practical Model-Based Testing: A Tools Approach"
Przedstawiamy książkę Marka Uttinga i Bruno Legearda z obszaru praktycznego zastosowania testowania opartego na modelu.
 

Książka przedstawia temat testowania oprogramowania w oparciu o model testowanego oprogramowania. Rozdział pierwszy to wprowadzenie do tematyki MBT (Model-Based Testing). Wyjaśnia również pojęcia: testowanie, Model-Based Testing i cztery główne podejścia określane tym terminem i spotykane w literaturze. Podejścia te nazywane i wymieniane są w takiej oto kolejności:

  1. Generowanie wejściowych danych testowych z domeny modelu
  2. Generowanie przypadków testowych z modelu środowiska
  3. Generowanie przypadków testowych wraz z wyrocznią z modelu behawioralnego
  4. Generowanie skryptów testowych z abstrakcyjnych testów.

Panowie Utting i Legeard w dużym skrócie wyjaśniają każdą z wymienionych definicji, skupiając się na trzeciej z nich, ponieważ o tym podejściu do MBT jest ta książka.

 

Rozdział drugi The Pain And The Gain, czyli w dosłownym tłumaczeniu "Ból i zysk", to prezentacja klasycznych metod testowania: najstarsza metoda, czyli testowanie manualne, następnie metoda "nagraj i odtwórz" oraz testowanie w oparciu o skrypty testowe. W kolejnej części tego samego rozdziału przedstawiono proces MBT. Autorzy dzielą MBT na 5 głównych kroków:

  1. Tworzenie modelu SUT (System Under Test) i/lub jego środowiska
  2. Generowanie abstrakcyjnych testów z istniejącego modelu
  3. Konkretyzacja abstrakcyjnych testów – testy stają się wykonywalne
  4. Wykonanie testów na SUT i przypisanie wyników
  5. Analiza wyników testów.

 

Rozdział trzeci zawiera praktyczne wskazówki jak zamodelować nasz system, jakiej notacji użyć w tym celu. Kolejny rozdział to kryteria wyboru testów. Rozdział piąty zawiera prosty przykład testowania aplikacji telefonicznej zamodelowanej jako skończoną maszynę stanów. Następny rozdział odpowiada na pytanie jak pisać pre/post modele do testowania. Rozdział szósty to z kolei dosyć szczegółowy opis testowania na podstawie UML-owego modelu tranzycji (przejść) – znajdują się w nim ogólne uwagi dotyczące notacji UML, przykład e-Teatru, który ma być testowany, następnie diagram przypadków użycia aplikacji e-Teatr, diagram klas, maszyna stanów dla klasy e-Teatr. Rozdział numer osiem dotyczy wspomnianego kroku trzeciego MBT – konkretyzacja abstrakcyjnych testów – czyli co zrobić, aby testy stały się wykonywalne. Chodzi tu o adaptację testów w taki sposób, aby można je było uruchomić na SUT. Zaprezentowane zostały trzy podejścia: odpowiedni adapter, skrypty testowe, hybryda – adapter + skrypty testowe. Rozdział dziewiąty stanowi opis studium przypadku zastosowania MBT dla karty telefonicznej SIM na podstawie standardu GSM 11.11. Rozdział dziesiąty to również bardzo obszerne studium przypadku tyle, że dotyczy ono testowania ATM (Automated Teller Machine) – bankomatu.

Ostatni rozdział książki traktuje bardzo ogólnie o tym, co jest wymagane celem stosowania MBT, tzn. wymagane kompetencje, dojrzałość przedsiębiorstwa, rodzaje zastosowań, jak MBT ma się do zwinnych metodyk zarządzania projektem informatycznym. Książka zawiera również dodatki, a wśród nich przytaczane notacje – notacja B maszyny abstrakcyjnej oraz OCL; listę komercyjnych narzędzi klasyfikowanych jako MBT.

 

Moje osobiste refleksje co do książki są takie, że na pewno nie czyta się jej łatwo i przyjemnie. Przed jej lekturą zalecałabym zapoznanie się z takimi terminami jak UML, OCL, automat skończony. Autorzy nie przedstawili w swojej książce praktycznych dowodów na to, że MBT jest podejściem do testowania, które się opłaca. Wprawdzie można już na początku książki przeczytać opis hipotetycznego projektu, w którym szacowana jest ilość godzin poświęcona na testowanie, niemniej jednak nie ma w nim nic na temat tego, ile należy w takie podejście zainwestować, aby faktycznie można byłoby w przyszłości czerpać z niego korzyści, i czy faktycznie wybór takiego podejścia jest uzasadniony ekonomicznie. W książce brakuje mi również odniesienia do zagadnienia zwiększonej jakości w ten sposób testowanego oprogramowania. Pomijając jednak wszystkie wady, zdecydowanie polecam zapoznanie się z tą publikacją oraz z tematyką MBT w ogóle.

 

Autor: Sylwia Bartman

 

Książkę można zakupić tutaj 

 

7252

Powiązane szkolenia

05-06
czerwca
2023
Jarosław Hryszko
online
Praktyka testowania
1 750PLN
Testowanie aplikacji internetowych
12
Wolnych miejsc
Rezerwuj
06-07
marca
2023
Arnika Hryszko
online
Praktyka testowania
1 770PLN
Testowanie użyteczności
9
Wolnych miejsc
Rezerwuj
20-21
kwietnia
2023
Rafał Stańczak
online
Dobre praktyki testowania
1 700PLN
Testowanie w metodykach Agile
12
Wolnych miejsc
Rezerwuj
23-24
marca
2023
Krzysztof Kołodziejczyk
online
Praktyka testowania
1 770PLN
Testowanie aplikacji mobilnych - Android
9
Wolnych miejsc
Rezerwuj
12-13
czerwca
2023
Krzysztof Skarbiński
online
Automatyzacja testowania
1 800PLN
Testowanie REST API dla początkujących w języku python
10
Wolnych miejsc
Rezerwuj
27-28
lutego
2023
Krzysztof Kołodziejczyk
online
Języki programowania dla testerów
1 800PLN
JavaScript dla testerów oprogramowania
9
Wolnych miejsc
Rezerwuj
24-26
kwietnia
2023
Krzysztof Kołodziejczyk
online
Praktyka testowania
3 000PLN
Tester gier
11
Wolnych miejsc
Rezerwuj
13
marca
2023
-09
kwietnia
2023
Krzysztof Kołodziejczyk
online
Automatyzacja testowania
5 500PLN
Praktyka automatyzacji testowania
5
Wolnych miejsc
Rezerwuj

To powinno Cię zainteresować