Trwają zapisy do grupy

Szkolenie: Python TDD: Test Driven Development and CI/CD

Uczestnicy szkolenia zapoznają się z procesem Test Driven Development (TDD) oraz metodami wdrażania ciągłej integracją (ang. Continuous Integration) w projektach Python.

  • Trenerzy praktycy
  • Kameralne grupy

Czas trwania szkolenia:3 dni (24h)

Poziom zaawansowania:

Kod kursu:PYTHON/TDD

pythontddci-cd

Dostępne terminy szkolenia

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

10 lutego
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

2950 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

12 maja
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

2950 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

11 sierpnia
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

2950 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Forma szkolenia

Interesuje Cię szkolenie stacjonarne?

Powiadom o kolejnych terminach

Interesuje Cię szkolenie w innym terminie?

Python TDD: Test Driven Development and CI/CD

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.


Dla kogo?

  • Programistów i testerów

  • Osób odpowiedzialnych jakość wytwarzanego 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


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


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

Program szkolenia

Pobierz program w PDF

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, doctest, pytest, behave

  • 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

Autorem szkolenia jest Matt Harasymczuk

Od 2015 roku prowadzę szkolenia jako trener Sages. Mam ponad 9 tysięcy godzin (tak, 9000!) doświadczenia w prowadzeniu warsztatów dla ponad 30 tys. osób. Dotychczas przeprowadziłem szkolenia dla 196 organizacji z sektorów tj. publiczny, bankowy, obronny, agencje kosmiczne, firmy branży lotniczej, automotive, e-commerce, fintech, ubezpieczenia, startupy wysokich technologii, branża paliwowa, telekomy, medyczna, uczelnie wyższe, gaming, druk 3d i consumer electronics. Specjalizuję się w szkoleniach…

Podobne szkolenia