Receptury testowania automatycznego - problemy, strategie, taktyki, techniki, narzędzia

Kod: craft-test-receptury
Kategoria: Testowanie automatyczne
Forma: 50% wykłady / 50% warsztaty
Czas trwania: 3
Grupa docelowa: developerzy

Szkolenie przeznaczone jest dla programistów, którzy posiadają podstawowe umiejętności testowania automatycznego i pragną poszerzyć je o szersze spojrzenie na problemy i strategie ich rozwiązywania.

Uczestnicy szkolenia:

  • zostaną zapoznani z technikami, które są użyteczne w kontekście ich pracy
  • następnie nabędą umiejętność świadomego składania technik w taktyki
  • w kolejnym etapie będą uczyć się klasyfikować problemy i dobierać do nich odpowiednie strategie (na które składają się taktyki i techniki poznane wcześniej)


Praktyki i techniki działają na poziomach:

  • wymagań,
  • architektury,
  • modelu domenowego,
  • procesu implementacji,
  • testów (end-to-end i jednostkowych).

Materiały wstępne

Przed szkoleniem możesz zapoznać się z serią naszych artykułów: Testowanie automatyczne.



Wyróżniki szkolenia

Podczas zajęć możesz oczekiwać szczególnych akcentów położonych na poniższe aspekty:

  • Zagadnienia architektury aplikacji wspierającej testowalność kodu
  • Najlepsze wzorce i praktyki
  • Aspekty Behavior Driven Development i Domain Driven Design

Program Szkolenia

Pobierz program w formacie PDF
  1. Problemy
    1. Eksplozja kombinatoryczna przypadków – w górnych warstwa multiplikują się możliwe stany obiektów domenowych
    2. Koszt stworzenia i utrzymania testów – zaślepki (Fake/Mock/Stub), dane testowe np. w bazie danych
    3. Nieaktualna dokumentacja (nikt jej nie czyta ani nie aktualizuje)
    4. Problem z komunikacją - brak zrozumienia celów biznesowych, biznes nie rozumie systemu
    5. Kosztowne w utrzymaniu skrypty do „wyklikania”
    6. Dobór zakresu testów do rzeczywistych potrzeb (Unit, End-to-End-komponent, End-to-End-system, Integracyjne)
    7. Rola testów: jakość dev. czy jakość biz.
    8. Architektura wspierająca testability (zależności, rozwarstwienie i rygor warstw)
    9. OO Design (SOLID, GRASP, RDD, DDD)
    10. Smells: Delikatne testy (fragile), Nieczytelne testy, Wolne testy, Testy niedeterministyczne
  2. Strategie
    1. Mapowanie piramidy testów na warstwy aplikacji
    2. Perfekcja domeny, ogólna zgodność wymagań
    3. Obniżanie kosztów poprzez unikanie zbędnej pracy
    4. Tworzenie wykonywalną dokumentację
    5. Skupienie dokumentację wokół celów biznesowych i flow użytkownika
    6. Operowanie słownictwem domenowym
    7. Orientacja na Flow a nie na skrypt UI
    8. Orientacja na Specyfikację a nie Flow
    9. Ciągła refaktoryzacja
  3. Taktyki
    1. Warstwa Aplikacji – Testy End-to-end – Komponentowe
    2. Warstwa Domenowa – Testy jednostkowe
    3. Abstrakcje Warstwy Infrastruktury – Testy integracyjne
    4. Unikaj pracy z serwerem
    5. Dwuwarstwowe Historyjki akceptacyjne
    6. Trójwarstwowe Wykonywalne Specyfikacje
    7. Struktura Given-When-Then: W proponuje dev, GT definiuje ekspert
    8. Testowanie przed refaktoryzacją (odpowiednie testy)
  4. Techniki
    1. Struktura Testów
    2. Testowanie niezmienników Agregatów
    3. Assembler Agregatów
    4. Assert Object
    5. Testowanie Serwisów Domenowych w stylu funkcyjnym
    6. Jak tworzyć zaślepki: Command-Mock, Query-Stub
    7. Testowanie Serwisów Domenowych w stylu funkcyjnym
    8. Agenty abstrahujące od protokołu komunikacyjnego
    9. Struktura Given-When-Then: W przez UI, GT niżej
    10. Niektóre specyfikacje testuj jednostkowo w warstwie domeny
    11. Techniki świadomej refaktoryzacji
  5. Narzędzia
    1. Narzędzia testowania jednostkowego (frameworki, asercje, matchery, mockowanie)
    2. Narzędzia testowania end-to-end
    3. Narzędzia automatyzacji UI
    4. Narzędzia mapowania wykonywalnych specyfikacji na kroki

Trenerzy

Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.

Materiały związane ze szkoleniem

Idea renesansowej pracowni - Bottegi zakłada nieustanną pracę jej członków i dzielenie się jej wynikami.

Zapytaj o szkolenie

Imię i nazwisko:
Firma:
E-mail/Nr tel:
Temat:
Wiadomość:

Jeżeli preferujesz osobisty kontakt to zawsze możesz zadzwonić.

Iwona Sobótka

Koordynatorka szkoleń