Sobes.tech
Junior — Middle

Come determina PyTest quali funzioni o casi di test devono essere eseguiti durante il test?

sobes.tech AI

Risposta dell'AI

PyTest rileva automaticamente funzioni e metodi di test secondo regole specifiche di denominazione e struttura. Per impostazione predefinita, cerca:

  • Funzioni il cui nome inizia con test_.
  • Metodi all’interno di classi il cui nome inizia con test_, a condizione che anche la classe inizi con Test e non erediti da unittest.TestCase.
  • File i cui nomi iniziano con test_ o terminano con _test.py.

In questo modo, PyTest scansiona le directory, trova questi file, li importa ed esegue tutte le funzioni e i metodi che soddisfano questi criteri. Ciò rende facile organizzare i test senza doverli registrare esplicitamente.

Esempio:

# test_example.py

def test_sum():
    assert sum([1, 2, 3]) == 6

class TestMath:
    def test_multiply(self):
        assert 2 * 3 == 6

Quando si esegue pytest, questi due test verranno rilevati ed eseguiti.