Jak testy akceptacyjne mogą kierować wytwarzaniem produktu?

Jak testy akceptacyjne mogą kierować wytwarzaniem produktu?
Zamiast osobo definiować wymagania i testy, do weryfikacji ich implementacji stosuje się metody, które łączą te dwa działania. Do najpopularniejszych należą ATDD i BDD.

Szeroka akceptacja praktyk zwinnego rozwoju oprogramowania wpłynęła na sposób, w jaki testowanie akceptacyjne jest powiązane z pozyskiwaniem wymagań i innymi czynnościami związanymi z analizą biznesową. W modelach sekwencyjnego cyklu życia oprogramowania, analiza, projektowanie i implementacja testów akceptacyjnych są czynnościami, które mają być wykonywane przez testerów po opracowaniu wymagań. Dzięki zwinnemu modelowi cyklu życia oprogramowania, kryteria akceptacji i przypadki testowe dla testów akceptacyjnych są tworzone podczas analizy wymagań, sesji doprecyzowywania wymagań i uszczegółowienia backlogu produktu (ang. Product Backlog). Pozwala to na wdrożenie zasady "wczesne testowanie" (ang. Early Testing) poprzez wykorzystanie projektowania przypadków testowych jako elementów czynności związanych z definiowaniem wymagań.

W następujących dwóch podejściach analiza i projektowanie testów akceptacyjnych są formalnie częścią procesu inżynierii wymagań:

  •  w wytwarzaniu sterowanym testami akceptacyjnymi (ang. Acceptance Test-Driven Development (ATDD)) testy akceptacyjne są opracowywane wspólnie podczas analizy wymagań przez analityków biznesowych, właścicieli produktu, testerów i programistów
  • wytwarzanie sterowane zachowaniem (ang. Behaviour-Driven Development (BDD)) wykorzystuje specyficzny dla tej domeny język skryptowy Gherkin, oparty na stwierdzeniach w języku naturalnym. Wymagania są zdefiniowane w formacie „Mając – Kiedy – Wtedy” (ang."Given - When -Then"). Wymagania te stają się przypadkami testowymi dla testów akceptacyjnych i służą również jako podstawa przy automatyzacji testów. 

Oba te podejścia angażują cały zespół zwinny i pomagają skoncentrować prace wytwórcze na celach biznesowych. Podejścia te traktują również przypadki testowe dla testów akceptacyjnych jako żywą dokumentację produktu, ponieważ mogą być czytane i rozumiane przez analityków biznesowych i innych interesariuszy. Przypadki testowe dla testów akceptacyjnych reprezentują scenariusze użycia produktu. Oba te podejścia są podobne i oba terminy są czasami używane zamiennie. W praktyce, BDD jest związane z wykorzystaniem języka Gherkin do wsparcia tworzenia testów akceptacyjnych, podczas gdy ATDD w projektowaniu testów opiera się na różnych formach tekstowych lub graficznych. Na przykład, graficzna reprezentacja przepływów pracy aplikacji może zostać wykorzystana w wizualnym podejściu do ATDD.

Używanie języka Gherkin do pisania przypadków testowych

W BDD testy akceptacyjne są często formułowane w ustrukturyzowanym języku, zwanym Gherkin3. Przy użyciu języka Gherkin, przypadki testowe są wyrażane deklaratywnie przy użyciu standaryzowanego formatu:

  • Mając [sytuacja]
  • Kiedy [działanie na system]
  • Wtedy [spodziewany wynik]. 

Format ten umożliwia analitykom biznesowym, testerom i deweloperom pisanie przypadków testowych w sposób, który jest łatwy do przekazania interesariuszom i może zostać zastosowany w testach automatycznych.

Blok „Mając” ma na celu wprowadzenie obiektu testowego w stan przed wykonaniem czynności testowych w bloku „Kiedy”. Blok „Wtedy” określa rezultaty, które można zaobserwować w wyniku działań zdefiniowanych w bloku „Kiedy”. Przypadki testowe zapisane w języku Gherkin nie odnoszą się do elementów interfejsu użytkownika, lecz raczej do działań podejmowanych przez użytkownika w systemie. Są to ustrukturyzowane przypadki testowe napisane w języku naturalnym, które mogą być zrozumiałe dla wszystkich interesariuszy. Ponadto struktura „Mając – Kiedy – Wtedy” może być przetwarzana w sposób zautomatyzowany. Pozwala to na automatyczne tworzenie skryptów testowych przy użyciu podejścia opartego na słowach kluczowych. Początkowo Gherkin był specyficzny dla niektórych narzędzi wspomagających BDD, ale teraz jest synonimem wzorca „Mając – Kiedy – Wtedy” w projektowaniu testów akceptacyjnych.

Wykorzystanie modeli procesów biznesowych dla ATDD

Podczas sesji uszczegóławiania wymagań i historyjek użytkowników modele procesów i reguł biznesowych pomogą zespołowi w ustaleniu szczegółów oczekiwanego zachowania i kryteriów akceptacji. Bezpośrednie przedstawienie przepływu pracy w BPMN i reguł w DMN umożliwia testerom zaprojektowanie odpowiednich przypadków testowych, które umożliwiają weryfikację kryteriów akceptacji.

Modelowanie procesów biznesowych dla potrzeb ATDD opiera się na następujących zasadach:

  • analitycy biznesowi i testerzy współpracują w celu modelowania przepływów pracy i reguł biznesowych przy użyciu notacji graficznych, takich jak BPMN i DMN
  • te modele procesów/reguł biznesowych są poddawane przeglądowi z odpowiednimi interesariuszami i służą walidacji wymagań i kryteriów akceptacji
  • testerzy opracowują testy na podstawie modeli procesów/reguł biznesowych, aby zapewnić i zademonstrować wymagane pokrycie różnych ścieżek i reguł biznesowych
  • analitycy biznesowi i testerzy mogą wykorzystywać modele również do utrzymywania przypadków testowych po identyfikacji zmian oraz do wyboru przypadków testowych do testów regresji
  • modele procesów/reguł biznesowych, stworzone i utrzymywane dla podejścia ATDD, mogą być postrzegane jako żywa dokumentacja, wykorzystywana przez analityków biznesowych do przedstawienia rzeczywistego zachowania obiektu testowego
  • do tworzenia i utrzymywania skryptów testowych do testów automatycznych można wykorzystać techniki automatycznego generowania testów. Oparte na modelu podejście do testowania może być również połączone z testowaniem opartym na słowach kluczowych i testowaniem sterowanym danymi. Modelowanie procesów/reguł biznesowych w ATDD dostarcza wizualizacji testowanych przepływów pracy. Stanowi to główną różnicę w stosunku do języka Gherkin używanego w BDD.

Tekst pochodzi z sylabusa ISTQB „Tester Akceptacyjny”.

Szkolenie "Tester Akceptacyjny" w testerzy.pl

Całkiem niedawno uruchomiliśmy w naszej ofercie nowe szkolenie "Tester Akceptacyjny". Już pierwszy termin spotkał się z Waszym wielkim zainteresowaniem, a wszystkie miejsca wyprzedały się ciągu zaledwie kilku dni. 

tester-akceptacyjny-pierwszy-termin.jpgWłaśnie z tego względu uruchamiamy dodatkowy, specjalny termin szkolenia prowadzonego przez akredytowaną trenerkę Arnikę Hryszko, które odbędzie się w dniach 30 - 31 października 2023

Zapraszamy!

Źródła:
http://edu.ittraining.pl/material/sylabus-istqb-certyfikowany-tester-tester-akceptacyjny-pl

To powinno Cię zainteresować