Sobes.tech
Junior — Middle

Kako PyTest određuje koje test funkcije ili slučajevi treba da se izvrše tokom testiranja?

sobes.tech АИ

Одговор од АИ

PyTest automatski prepoznaje test funkcije i metode prema određenim pravilima imenovanja i strukture. Podrazumevano, traži:

  • Funkcije čiji nazivi počinju sa test_.
  • Metode unutar klasa čiji nazivi počinju sa test_, pod uslovom da i sama klasa počinje sa Test i ne nasleđuje od unittest.TestCase.
  • Fajlove čiji nazivi počinju sa test_ ili se završavaju na _test.py.

Na ovaj način, PyTest skenira direktorijume, pronalazi te fajlove, uvozi ih i pokreće sve funkcije i metode koje odgovaraju ovim kriterijumima. To olakšava organizaciju testova bez potrebe da ih eksplicitno registrujete.

Primer:

# test_example.py

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

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

Kada pokrenete pytest, ovi testovi će biti automatski prepoznati i izvršeni.