Sobes.tech
Junior — Middle

PyTest, test sırasında hangi test fonksiyonlarının veya durumlarının çalıştırılacağını nasıl belirler?

sobes.tech yapay zeka

AI'dan gelen yanıt

PyTest, belirli isimlendirme ve yapı kurallarına göre test fonksiyonlarını ve metodlarını otomatik olarak tespit eder. Varsayılan olarak, şunları arar:

  • test_ ile başlayan fonksiyonlar.
  • test_ ile başlayan isimlere sahip sınıf içi metodlar, bu sınıfın da Test ile başlaması ve unittest.TestCase'den türememesi koşuluyla.
  • test_ ile başlayan veya _test.py ile biten dosyalar.

Bu şekilde, PyTest dizinleri tarar, bu dosyaları bulur, içe aktarır ve bu kriterlere uyan tüm fonksiyon ve metodları çalıştırır. Bu, testleri açıkça kaydetmeye gerek kalmadan düzenlemeyi kolaylaştırır.

Örnek:

# test_example.py

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

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

pytest çalıştırıldığında, bu iki test tespit edilir ve çalıştırılır.