У меня есть файл 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 в тестовом файле?