Python TDD: Test Driven Development and CI/CD

3150 PLN+23% VAT (3874 PLN brutto / 1 os.)

Czas trwania szkolenia:3 dni (24h)

Kod kursu:PYTHON/TDD

Poziom zaawansowania:
pythontddci-cd

Dostępne terminy

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

5 sierpień
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

3150 PLN netto+23% VAT

Lokalizacja:

Zdalne
Zdalne

Termin:

25 listopad
Trwają zapisy na szkolenie

Trener:

Matt Harasymczuk

Cena:

3150 PLN netto+23% VAT

Lokalizacja:

Zdalne
Zdalne

Interesuje Cię szkolenie stacjonarne lub nie odpowiada Ci żaden z dostępnych terminów?

Ikona pytaniaZapytaj o szkolenie

O szkoleniu Python TDD: Test Driven Development and CI/CD

W cenie otrzymasz:

  • Materiały szkoleniowe
  • Certyfikat ukończenia szkolenia
  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Dla kogo?

  • Programistów i testerów
  • Osób odpowiedzialnych jakość wytwarzanego oprogramowania

Wymagania

  • Umiejętność wytwarzania oprogramowania w języku Python
  • Znajomość obiektowego paradygmatu wytwarzania oprogrogramowania
  • Umiejętność korzystania z konsoli systemu operacyjnego
  • Znajomość podstawowych koncepcji związanych z infrastrukturą
  • Wiedza o procesach obejmujących wytwarzanie oprogramowania
  • Uczestnictwo w co najmniej jednym projekcie związanym z wytwarzaniem oprogramowania

Zalety

  • Uczestnik zapozna się z procesem TDD i będzie potrafił wytwarzać oprogramowanie stosując tą technikę
  • Omówione zostanie wykorzystanie mocków i stubów, a także problem precyzji IEEE-754 oraz testowania wartości pseudolosowych
  • Zapoznanie się ze wszystkimi elementami składowymi procesów związanych z wydaniami ciągłymi oprogramowania

Cele szkolenia

  • Nauka wytwarzania oprogramowania w procesie TDD
  • Umiejętność wykorzystania narzędzi i frameworków wspierających TDD tj. mock oraz stub
  • Określenie dobrych i złych praktyk, związanych z procesem ciągłej integracji
  • Praktyczne budowanie planu testów i komunikacji w ramach CI Ponadto uczestnictwo w szkoleniu Python z zakresu Test-Driven Development (TDD) obejmuje zarówno rozwój umiejętności programistycznych, jak i doskonalenie praktyk związanych z tworzeniem oprogramowania, tj:
  • Zrozumienie metodologii TDD: Zdobycie pełnego zrozumienia idei Test-Driven Development, czyli pisanie testów jednostkowych przed napisaniem właściwej implementacji.
  • Nauka praktycznych umiejętności związanych z TDD w pythonie: Opanowanie praktycznych umiejętności korzystania z narzędzi i frameworków do testowania jednostkowego w języku Python, takich jak unittest, pytest czy nose.
  • Rozwój umiejętności testowania jednostkowego: Doskonalenie umiejętności tworzenia skutecznych testów jednostkowych, które są łatwe w utrzymaniu i dostarczają wartościowe informacje zwrotne.
  • Zastosowanie testów jako dokumentacji kodu: Nauczenie się korzystania z testów jako formy dokumentacji kodu, umożliwiającej zrozumienie funkcji i wymagań.
  • Zwiększenie jakości oprogramowania: Celowym użyciem TDD można poprawić jakość oprogramowania poprzez wcześniejsze wykrywanie i rozwiązywanie błędów.
  • Zrozumienie korzyści długoterminowych: Zrozumienie korzyści, jakie TDD może przynieść w dłuższej perspektywie, takie jak zwiększona łatwość utrzymania kodu, szybsze wprowadzanie zmian, czy też zwiększona pewność co do działania kodu.
  • Integracja testów w proces tworzenia oprogramowania: Nauczenie się, jak efektywnie integrować testy jednostkowe w procesie tworzenia oprogramowania, zarówno na etapie deweloperskim, jak i w procesie CI/CD.
  • Zdobycie doświadczenia w refaktoryzacji: Wykorzystanie TDD do prowadzenia refaktoryzacji kodu z zachowaniem pełnej funkcjonalności, co pozwala na poprawę struktury kodu bez obawy o wprowadzenie błędów.
  • Efektywne używanie narzędzi do testowania w pythonie: Zdobycie praktycznych umiejętności korzystania z narzędzi automatyzujących proces testowania w języku Python.
  • Skupienie na tworzeniu wartościowych rozwiązań: Zrozumienie, jak TDD może pomóc w skupieniu się na tworzeniu rozwiązań, które rzeczywiście dostarczają wartość dla użytkowników. Uczestnictwo w szkoleniu TDD w Pythonie może pomóc w osiągnięciu tych celów, co przyczynia się do profesjonalnego rozwoju w dziedzinie tworzenia oprogramowania.

Program

Rodzaje testów na przykładach

  • Jednostkowe
  • Dymne
  • Analiza statyczna
  • Mutacyjne
  • Regresyjne
  • Funkcjonalne
  • Interfejsu
  • Obciążeniowe
  • Integracyjne
  • Bezpieczeństwa

Test Driven Development

  • Test first vs test last development
  • Mock vs Stub
  • Problem precyzji liczb float (IEEE-754)
  • Testowanie wartości pseudolosowych oraz pojęcie ziarna losowości
  • Framework unittest vs doctest
  • Uruchamianie testów w środowisku IDE (PyCharm) oraz z konsoli
  • Demonstracja TDD

Samodzielny projekt TDD (kilkanaście iteracji)

  • Demonstracja TDD
  • Techniki Code review i zespołowej oceny kodu
  • Opcje refaktoringu w środowisku IDE (PyCharm)
  • Testy aplikacji asynchronicznych

Refaktoryzacja

  • Rename
  • Extract Method
  • Extract Superclass
  • Inline
  • Introduce Variable
  • Introduce Constant
  • Introduce Field
  • Introduce Parameter
  • Pull Members Up
  • Push Members Down

Podobne szkolenia