Testy jednostkowe w języku Python - framework unittest

Efektywne testowanie jednostkowe w Pythonie: framework unittest w praktyce - zwiększ jakość i niezawodność Twojego kodu!

4.30 (139 reviews)
Udemy
platform
Polski
language
Programming Languages
category
1,026
students
5 hours
content
Jan 2024
last update
$19.99
regular price

What you will learn

wprowadzenie do testowanie oprogramowania

wprowadzenie do testów jednostkowych

framework unittest

tworzenie testów i metody asercji

przygotowanie środowiska do testów - test fixtures

wykonywanie testów i raportowanie wyników

uruchamianie testów z wiersza poleceń i z poziomu PyCharm

warunkowe pomijanie testów

testowanie funkcji, klas i metod

testy parametryzowane

mockowanie w testowaniu jednostkowym, klasa Mock oraz MagicMock, dekorator @patch

3 projekty - Employee + Shopping Basket + Customer Database

Description

"Testy jednostkowe w języku Python - framework unittest" to kurs, który nauczy Cię, jak pisać i uruchamiać testy jednostkowe dla swojego kodu w języku Python przy użyciu wbudowanego frameworka unittest.

Testy jednostkowe są kluczowym elementem tworzenia oprogramowania. Pozwalają na sprawdzanie, czy indywidualne jednostki kodu, takie jak funkcje lub metody, działają poprawnie. Testy jednostkowe pomagają w wykrywaniu błędów we wczesnym etapie procesu tworzenia oprogramowania, a także ułatwiają utrzymanie i rozwijanie kodu w przyszłości.

W tym kursie nauczysz się, jak pisać testy jednostkowe w Pythonie, jak uruchamiać te testy i interpretować wyniki. Kurs pokrywa podstawowe aspekty unittest, takie jak tworzenie test case'ów, asercje, ustawianie i kończenie testów, a także bardziej zaawansowane tematy, takie jak mockowanie i testowanie wyjątków.

Kurs jest bardzo praktyczny - każdy temat jest tłumaczony na przykładach, a uczestnicy są zachęcani do pisania i uruchamiania własnych testów jednostkowych. Dzięki temu uczestnicy mogą nauczyć się zastosowań testów jednostkowych w praktycznych scenariuszach.

"Testy jednostkowe w języku Python - framework unittest" to doskonały wybór dla tych, którzy chcą nauczyć się pisania testów jednostkowych w Pythonie. Bez względu na to, czy jesteś początkującym programistą, czy doświadczonym deweloperem, ten kurs pomoże Ci zrozumieć i opanować testy jednostkowe w Pythonie, co przyczyni się do poprawy jakości Twojego kodu i efektywności Twojej pracy.


unittest - buduj pewność i jakość dzięki testom!

Unittest to framework do testowania jednostkowego wbudowany w język Python. Jest to narzędzie, które umożliwia programistom pisanie, uruchamianie i zarządzanie testami jednostkowymi w sposób przejrzysty i efektywny.

Testy jednostkowe w unittest służą do sprawdzania poprawności pojedynczych fragmentów kodu, nazywanych jednostkami, takich jak funkcje, metody czy klasy. Testy są tworzone w postaci testowych przypadków, które definiują oczekiwane zachowanie danej jednostki. Przy użyciu unittest można tworzyć asercje, czyli warunki, które muszą być spełnione, aby testy zostały uznane za sukces.

Framework unittest oferuje szereg narzędzi i funkcji, które ułatwiają pisanie testów jednostkowych. Posiada wbudowany system raportowania wyników testów, obsługę asercji, możliwość grupowania testów w zestawy, automatyczną detekcję testów oraz wiele innych funkcji, które przyspieszają proces testowania i pomagają w utrzymaniu wysokiej jakości kodu.

Dzięki unittest programiści mogą zweryfikować, czy ich jednostki kodu działają zgodnie z oczekiwaniami, a testy jednostkowe stanowią ważny element procesu ciągłej integracji i wdrażania (CI/CD), pomagając wychwycić potencjalne błędy już na etapie tworzenia kodu.

Content

Wstęp

Wymagania do kursu
Repozytorium kursu

Testowanie oprogramowania

Testowanie oprogramowania
Testowania oprogramowania - cele
Przyczyny defektów
Kilka zasad testowania
Podział testów
Poziomy testowania
Testowanie jednostkowe vs. testowanie integracyjne

Testowanie jednostkowe

Testowanie jednostkowe
Testowanie jednostkowe - F.I.R.S.T oraz TDD
Dobre praktyki
Strategie testowania
Framework unittest
Podstawowe metody asercji

Konfiguracja środowiska

GitHub + PyCharm - utworzenie repozytorium kursu
Dlaczego PyCharm?
PyCharm - utworzenie środowiska wirtualnego

Dlaczego potrzebujemy testów?

Dlaczego potrzebujemy testów?

Instrukcja assert

Instrukcja assert
Instrukcja assert - równoważnie
Instrukcja assert - przykład
Instrukcja assert - przykład
Instrukcja assert - przykład

Framework unittest - podstawy

Pierwszy test
Dodawanie kolejnych testów
Możliwe wyniki testu
Krótko o __name__
Uruchamianie testów z unittest
Klasa testowa
Kolejność uruchamiania metod testowych
Kolejność uruchamiania klas testowych
Uruchamianie przypadków testowych
Uruchamianie przypadków testowych do pierwszego niepowodzenia
Bonus: zatwierdzenie zmian w repozytorium - git commit

Metody asercji

Metoda assertEqual()
Metoda assertAlmostEqual()
Metody assertGreater(), assertLess()
Metody assertTrue(), assertFalse()
Metody assertIn(), assertNotIn()
Metoda assertIsInstance()
Metoda assertRaises()
unittest docs

Pomijanie testów

Pomijanie testu
Warunkowe pomijanie testu - skipIf
Warunkowe pomijanie testu - skipUnless

Test fixtures - przygotowanie środowiska do testów

Przygotowanie środowiska na poziomie modułu
Przygotowanie środowiska na poziomie klasy testowej
Przygotowanie środowiska na poziomie testu

Testowanie funkcji

Przykład 1 - rectangle area
Przykład 2 - rectangle perimeter
Przykład 3 - tax
Przykład 4 - tax
Zadanie
Przykładowe rozwiązanie

Testowanie klas i metod

Testowanie klas i metod cz. 1
Testowanie klas i metod cz. 2
Testowanie klas i metod cz. 3
Testowanie klas i metod cz. 4

Projekt I - Employee

Employee - wprowadzenie
Employee - zarys zadania
Employee - rozwiązanie
Employee - refaktoryzacja

Testy parametryzowane

Potrzeba testów parametryzowanych
Testy parametryzowane
Testy parametryzowane - parameterized

Projekt II - Shopping Basket

Wprowadzenie - Product + Shopping Basket
Przygotowanie do testów - zadanie
Rozwiązanie - cz. 1
Rozwiązanie - cz. 2
Rozwiązanie - cz. 3

Projekt III - Customer Database

Wzorzec Arrange-Act-Assert
Wprowadzenie - CustomersDB
Przygotowanie do testów - zadanie
Rozwiązanie

Mockowanie

Mockowanie - wykład
Klasa Mock
Klasa MagicMock
Context Manager + patch
Dekorator @patch
Mockowanie - projekt I
Mockowanie - projekt II
Mockowanie - projekt III
Mockowanie metod

Screenshots

Testy jednostkowe w języku Python - framework unittest - Screenshot_01Testy jednostkowe w języku Python - framework unittest - Screenshot_02Testy jednostkowe w języku Python - framework unittest - Screenshot_03Testy jednostkowe w języku Python - framework unittest - Screenshot_04

Reviews

Krystian
August 2, 2023
Bardzo dobrze przeprowadzony kurs, wracałem do niego już wielokrotnie przy pisaniu własnych testów jednostkowych. Polecam
Michał
April 11, 2023
Właśnie przygotowuje się do rozmowy o pracę na której jednym z zagadnień mają być testy jednostkowe i dzięki tym ćwiczeniom nabieram więcej pewności siebie, bardzo przejrzysto i zrozumiale prowadzony kurs, polecam!
Jakub
June 29, 2022
Super kurs, jeden z lepszych jaki miałem przyjemność kupić. Dobrze wytłumaczone zagadnienia, praca samodzielna, materiały. Jestem zadowolony
Mateusz
January 19, 2022
Super! Akurat mam projekt w toku gdzie wszystko z tego kursu będę mógł wdrożyć. Już nie mogę się doczekać. Ale najpierw... ćwiczenia :)
Kopalnik
December 16, 2021
Wybitnie dobrze wytłumaczone zagadnienie dotyczące testów jednostkowych w Pythonie :-) Szybko i na temat - nie żałuje czasu ani pieniędzy bo warto było :-)
Kacper
September 19, 2021
Kurs jest jak najbardziej dobry, jednak sekcja mockowania pozostawia w moim przypadku więcej pytań niż odpowiedzi. Zaraz zaczynam kurs ćwiczeniowy, więc jeśli pozostałe niepewności zostaną rozwinięte, ocena będzie zmieniona na 5. Przed mockowaniem wszystko było świetnie wytłumaczone, jasno i klarownie.
Wojciech
February 17, 2021
Nareszcie ogarnąłem o co chodzi w testowaniu :) Jedynie te mocki pokręciły mi nieco wiedzę na koniec, ale tego tematu nie wypadało pominąć w kwestii testów.
Jarosław
December 14, 2020
Wszystko jasno wytłumaczone, do momentu opisu Mock. Tu było za dużo mock-ów w jednym miejscu :-) Spowodowane to jest też pewnie moimi brakami w Pythonie, ale obejrzę jeszcze kilka razy i będzie dobrze. Jestem bardzo zadowolony, podstawowe testy, bez mockowani już używam.

Charts

Price

Testy jednostkowe w języku Python - framework unittest - Price chart

Rating

Testy jednostkowe w języku Python - framework unittest - Ratings chart

Enrollment distribution

Testy jednostkowe w języku Python - framework unittest - Distribution chart
3613878
udemy ID
11/4/2020
course created date
12/4/2020
course indexed date
Bot
course submited by