Junior — Middle
pytest ilə testlərdə parametrlərdən istifadə etmənin nə demək olduğunu izah edə bilərsinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
pytest-də parametrizasiya testlərin eyni testi müxtəlif giriş məlumatları ilə işlətməyə imkan verir, bu da çoxsaylı variantların yoxlanmasını kodu təkrarlamadan asanlaşdırır.
Bunun üçün @pytest.mark.parametrize dekoratorundan istifadə olunur, o parametr adını və dəyərlər və ya dəyərlər cütlüklərindən ibarət siyahını qəbul edir.
Nümunə:
import pytest
@pytest.mark.parametrize("input,expected", [
(2, 4),
(3, 9),
(4, 16),
])
def test_square(input, expected):
assert input * input == expected
Bu nümunədə, test_square testi müxtəlif input və expected dəyərləri ilə üç dəfə icra olunacaq. Bu, funksiyanı müxtəlif məlumatlarla yoxlamaq üçün faydalıdır.