Sobes.tech
Junior — Middle

Мо метавонед шарҳи кунед, ки истифодаи параметрҳо дар тестҳо бо pytest чӣ маъно дорад?

sobes.tech AI

Ҷавоб аз AI

pytest-те параметризация тестов מאפשרת להריץ את אותו מבחן עם מערכי קלט שונים, מה שמקל על בדיקת מגוון אפשרויות מבלי לשכפל קוד.

למטרה זו משתמשים ב-@pytest.mark.parametrize, שמקבל את שם הפרמטר ורשימת ערכים או זוגות ערכים.

דוגמה:

import pytest

@pytest.mark.parametrize("input,expected", [
    (2, 4),
    (3, 9),
    (4, 16),
])
def test_square(input, expected):
    assert input * input == expected

בדוגמה זו, הפונקציה test_square תרוץ שלוש פעמים עם ערכים שונים של input ו-expected. זה שימושי לבדיקה של הפונקציה עם נתונים שונים.