Pytest нераспознанные аргументы при импорте файла с argparse - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть файл settings.py, который выглядит следующим образом:

import argparse


parser = argparse.ArgumentParser()
parser.add_argument("-var", "--variable", dest="variable", default="qwerty",
                    type=str, help="specify variable")
args = parser.parse_args()

variable = args.variable

Тестовый файл test_var.py импортирует эти settings.py:

import settings


class TestVar:
    def test_001(self):
        pass

Когда я запускаю pytest var_test.py:: TestVar.test_001 возникает следующая ошибка:

usage: _jb_pytest_runner.py [-h] [-var VARIABLE]
_jb_pytest_runner.py: error: unrecognized arguments: var_test.py::TestVar::test_001

var_test.py:None (var_test.py)
var_test.py:1: in <module>
    import settings
settings.py:7: in <module>
    args = parser.parse_args()
C:\Python36\lib\argparse.py:1733: in parse_args
    self.error(msg % ' '.join(argv))
C:\Python36\lib\argparse.py:2389: in error
    self.exit(2, _('%(prog)s: error: %(message)s\n') % args)
C:\Python36\lib\argparse.py:2376: in exit
    _sys.exit(status)
E   SystemExit: 2

Если settings.py не импортирован, то тест выполняется без ошибок.Почему возникает эта ошибка и как я могу импортировать setting.py в тестовом файле?

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