t.me/atinfo_chat Telegram группа по автоматизации тестирования

Запуск NOSE тестов с конкретными тестовыми данными через командную строку

Теги: #<Tag:0x00007f7488aca928> #<Tag:0x00007f7488aca7c0> #<Tag:0x00007f7488aca680>

Здравствуйте!

Подскажите, пожалуйста, со следующим вопросом:
появилась необходимость запуска теста через консоль с конкретными тестовыми данными, тестовые данные в виде объект. Можно ли как-то этот объект передать как параметр в командной строке?
Речь идёт о Nosetests

Что касается самого nose - из коробки не умеет парсить произвольные аргументы командной строки.

https://pythonworld.ru/moduli/modul-pickle.html - pickle для сериализации/десериализации пайтон-объектов

Чтобы указать путь к файлу с pickle-объектом:

Пара костылей реализовано в плагине:
https://pypi.python.org/pypi/nose-testconfig/ (Passing parameters on the command line without specifying a configuration file)

Ну или по-простому:
В консоли задаем env variable MYVAR:

MYVAR=my/path/to/file nosetests my_test.py

В коде ее читаем, ну и дальше десериализуем

os.getenv('MYVAR', '')