Sobes.tech
Back to questions
Middle
7

Какие аннотации ты использовал в pytest?

Companies where asked
Perfomance lab

Answer from AI

sobes.tech AI

В pytest я часто использовал следующие аннотации (декораторы):

  • @pytest.mark.parametrize — для параметризации тестов, чтобы запускать один тест с разными наборами данных.
  • @pytest.fixture — для создания и управления фикстурами, которые подготавливают тестовое окружение.
  • @pytest.mark.skip и @pytest.mark.skipif — для пропуска тестов или условного пропуска.
  • @pytest.mark.xfail — для пометки тестов, которые ожидаемо падают.

Пример использования параметризации:

import pytest

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

Фикстура для подготовки данных:

import pytest

@pytest.fixture
def sample_data():
    return {'key': 'value'}


def test_using_fixture(sample_data):
    assert sample_data['key'] == 'value'