Как передать tsv файл в аргумент функции pytest?

Для передачи TSV-файла в аргумент функции в pytest, можно воспользоваться параметрами командной строки или использовать механизм фикстур. Рассмотрим оба варианта.

Передача TSV-файла в аргумент через командную строку:
1. Установите пакет pytest и его зависимости с помощью менеджера пакетов Python, например pip:

pip install pytest

2. Создайте файл с тестами, например test_example.py, и импортируйте модули, которые вам понадобятся для работы с TSV-файлами:

import csv

3. Определите функцию теста, которая будет принимать аргумент с путем к TSV-файлу:

def test_tsv_file(tsv_file):
    with open(tsv_file, 'r') as f:
        # чтение TSV-файла с использованием модуля csv
        reader = csv.reader(f, delimiter='t')
        # ваш код тестирования

4. В командной строке запустите pytest и передайте путь к TSV-файлу в качестве аргумента с помощью параметра --tsv-file:

pytest test_example.py --tsv-file=path/to/your/tsv_file.tsv

5. В вашем тестовом модуле обработайте переданный аргумент с помощью механизма фикстур в pytest:

import pytest

@pytest.fixture
def tsv_file(request):
    return request.config.getoption('--tsv-file')

Использование механизма фикстур для передачи TSV-файла в аргумент функции:
1. Создайте файл conftest.py рядом с вашими тестами и импортируйте модули, которые вам понадобятся для работы с TSV-файлами:

import csv
import pytest

2. Определите фикстуру, возвращающую путь к TSV-файлу:

@pytest.fixture
def tsv_file():
    return 'path/to/your/tsv_file.tsv'

3. В файле test_example.py импортируйте фикстуру и определите функцию теста:

def test_tsv_file(tsv_file):
    with open(tsv_file, 'r') as f:
        # чтение TSV-файла с использованием модуля csv
        reader = csv.reader(f, delimiter='t')
        # ваш код тестирования

4. Запустите pytest:

pytest test_example.py

В обоих случаях TSV-файл будет передан в качестве аргумента в функцию test_tsv_file. Вы можете использовать этот аргумент для чтения файла и выполнения необходимых проверок внутри тестовой функции.