Úvod do fixtures

Úvod do testování v Pythonu

Alexander Levin

Data Scientist

Co je fixture

  • Fixture – připravené prostředí pro spuštění testu
  • Nastavení fixture – proces přípravy prostředí a zdrojů vyžadovaných jedním nebo více testy

Představte si přípravu pikniku:

  1. Pozveme přátele a připravíme jídlo (to dělají fixtures)
  2. Užijeme si zábavu!
  3. Uklidíme
Úvod do testování v Pythonu

Proč potřebujeme fixtures

Fixtures pomáhají:

  • Usnadnit nastavení testů
  • Oddělit test od přípravy prostředí
  • Zajistit znovupoužitelnost kódu fixture
Úvod do testování v Pythonu

Příklad fixture: přehled

Předpokládejme:

  • proměnnou Python list s názvem data
  • data = [0, 1, 1, 2, 3, 5, 8, 13, 21]

Chceme otestovat, že:

  • Obsahuje 9 prvků
  • Obsahuje prvky 5 a 21
Úvod do testování v Pythonu

Příklad fixture: kód

import pytest

# Fixture decorator
@pytest.fixture
# Fixture for data initialization
def data():
    return [0, 1, 1, 2, 3, 5, 8, 13, 21]

def test_list(data):
    assert len(data) == 9
    assert 5 in data
    assert 21 in data
Úvod do testování v Pythonu

Příklad fixture: výstup

Výstup příkladu: výstup příkladu fixture

Úvod do testování v Pythonu

Jak používat fixtures

Postup použití fixture:

  1. Připravte software a testy
  2. Najděte „přípravu prostředí"
  3. Vytvořte fixture:
    • Deklarujte dekorátor @pytest.fixture
    • Implementujte funkci fixture
  4. Použijte vytvořenou fixture:
    • Předejte název fixture testovací funkci
    • Spusťte testy!
Úvod do testování v Pythonu

Shrnutí

Naučili jsme se o testovacích fixtures:

  • Fixture – připravené prostředí pro spuštění testu
  • Fixtures usnadňují nastavení testů a oddělují ho od testovacích funkcí
  • Jednoduchý příklad: příprava Python list
  • Fixture pytest se definuje deklarací @pytest.fixture
    • následovanou funkcí fixture
  • Názvy fixtures se v testech používají jako proměnné
Úvod do testování v Pythonu

Pojďme si procvičit!

Úvod do testování v Pythonu

Preparing Video For Download...