Înlănțuirea cererilor de fixture

Introducere în testarea în Python

Alexander Levin

Data Scientist

Ce este o cerere înlănțuită

  • Înlănțuirea cererilor de fixture - o funcționalitate pytest care permite unui fixture să utilizeze alt fixture
  • Creează o compoziție de fixture-uri

un fixture apelează alt fixture

Introducere în testarea în Python

De ce și când să fie utilizată

Înlănțuirea cererilor de fixture ajută la:

  • Stabilirea dependențelor dintre fixture-uri
  • Menținerea codului modular

Când este utilă:

  • Când există mai multe fixture-uri care depind unele de altele
Introducere în testarea în Python

Exemplu de cereri înlănțuite

# Fixture that is requested by the other fixture
@pytest.fixture
def setup_data():
    return "I am a fixture!"
# Fixture that is requested by the test function
@pytest.fixture
def process_data(setup_data):
    return setup_data.upper()
# The test function
def test_process_data(process_data):
    assert process_data == "I AM A FIXTURE!"
Introducere în testarea în Python

Cum se utilizează cererile înlănțuite

  1. Pregătiți programul de testat
  2. Pregătiți funcțiile de testare
  3. Pregătiți fixture-urile pytest
  4. Transmiteți numele fixture-ului în semnătura celuilalt fixture
# Fixture requesting other fixture
@pytest.fixture
def process_data(setup_data):
    return setup_data.upper()
Introducere în testarea în Python

Rezumat

  • Înlănțuirea cererilor de fixture este o funcționalitate care permite unui fixture să utilizeze alt fixture (creând compoziții de fixture-uri)
  • Ajută la structurarea codului pe funcții și menținerea sa modulară
  • Exemplu de utilizare: etapele unui pipeline de date
  • Pentru utilizare, transmiteți numele fixture-ului în semnătura celuilalt fixture
Introducere în testarea în Python

Să exersăm!

Introducere în testarea în Python

Preparing Video For Download...