Pytest Ищет эффективный способ анализа нескольких аргументов командной строки - PullRequest
0 голосов
/ 12 марта 2020

В моем коде я хочу прочитать несколько аргументов командной строки. Если я следую подходу parser.addoption () & fixture в conftest.py и хочу получить их в тестовом скрипте с помощью вызова фикстуры, код будет огромным, как показано в фрагменте ниже. Есть ли какой-либо другой оптимизированный способ сделать это в pytest?

# Conftest.py

def pytest_addoption(parser):
    parser.addoption("--a", action="store",  help='read')
    parser.addoption('--b', action="store", help='read')

@pytest.fixture(scope='session')
def a(request):
    return request.config.getoption("--a")
@pytest.fixture(scope='session')
def b(request):
    return request.config.getoption("--b")

Примечание. Приведенные выше записи будут удваиваться, если я хочу добавить опцию 'c' & 'd'

Тестовый скрипт:

# test_exec.py

import pytest
def test_check(a):
    print ("Trying to read back the command line arguments")
    print (a)
def test_check2(b):
    print ("Trying to read back the command line arguments")
    print (b)

Как уже упоминалось выше, если я хочу прочитать значения для c & d, число строк кода увеличивается. Я ищу любой другой эффективный способ в Pytest для обработки большего количества аргументов командной строки.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...