Chaîner des requêtes de fixtures

Introduction aux tests en Python

Alexander Levin

Data Scientist

Qu'est-ce qu'une requête chaînée

  • Chaîner des requêtes de fixtures — fonctionnalité de pytest qui permet à une fixture d'en utiliser une autre
  • Crée une composition de fixtures

une fixture appelle une autre fixture

Introduction aux tests en Python

Pourquoi et quand les utiliser

Les requêtes chaînées de fixtures aident à :

  • Établir des dépendances entre fixtures
  • Garder le code modulaire

Quand c'est utile :

  • Quand plusieurs fixtures dépendent les unes des autres
Introduction aux tests en Python

Exemple de requêtes chaînées

# Fixture demandée par une autre fixture
@pytest.fixture
def setup_data():
    return "I am a fixture!"
# Fixture demandée par la fonction de test
@pytest.fixture
def process_data(setup_data):
    return setup_data.upper()
# Fonction de test
def test_process_data(process_data):
    assert process_data == "I AM A FIXTURE!"
Introduction aux tests en Python

Comment utiliser les requêtes chaînées

  1. Préparer le programme à tester
  2. Préparer les fonctions de test
  3. Préparer les fixtures pytest
  4. Passer le nom de la fixture dans la signature de l'autre fixture
# Fixture qui demande une autre fixture
@pytest.fixture
def process_data(setup_data):
    return setup_data.upper()
Introduction aux tests en Python

Résumé

  • Chaîner des requêtes de fixtures : permet à une fixture d'en utiliser une autre (composition de fixtures)
  • Aide à découper le code en fonctions et à le garder modulaire
  • Cas d'usage : étapes d'un pipeline de données
  • Pour les utiliser, passez le nom de la fixture dans la signature de l'autre fixture
Introduction aux tests en Python

Passons à la pratique !

Introduction aux tests en Python

Preparing Video For Download...