Junior — Middle
pytest ile testlerde parametrelerin kullanımıyla ne kastedildiğini açıklayabilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
pytest'te parametrize testleri, aynı testi farklı giriş verileri setleriyle çalıştırmaya olanak tanır, bu da kod tekrarını olmadan çeşitli varyantların kontrolünü kolaylaştırır.
Bunun için @pytest.mark.parametrize dekoratörü kullanılır, bu dekoratör parametre adını ve değerler veya değer tuple'larından oluşan bir liste alır.
Örnek:
import pytest
@pytest.mark.parametrize("input,expected", [
(2, 4),
(3, 9),
(4, 16),
])
def test_square(input, expected):
assert input * input == expected
Bu örnekte, test_square testi farklı input ve expected değerleriyle üç kez çalıştırılacaktır. Bu, fonksiyonu farklı verilerle test etmek için kullanışlıdır.