Robot Framework: доступ к глобальным переменным робота из кода библиотеки Python?
У меня есть несколько глобальных переменных типа настроек, которые яЯ хотел бы иметь возможность получить доступ из кода Python. Например:
pybot --variable RESULTS_PATH:/wherever/this/points test.txt
Теперь мой модульlogger.py
Для правильной настройки файла необходимо знать results_path.
Я знаю, что могу инициализировать регистратор с переменной, как
***Settings***
Library logger ${RESULTS_PATH}
А потом в логгер ябудут переданы results_path:
def __init__(self, results_path):
# Whatever
Однако проблема с этим для меня заключается в том, что я хочу получить доступ и использовать регистратор как из кода Python, так и из тестовых случаев. Поэтому, если я настрою это таким образом, если я захочу использовать регистратор из кода Python, я столкнусь с той же проблемой, что при использовании results_path для правильной инициализации регистратора.
Существуют ли какие-либо функции в библиотеке фреймворка робота, которые позволили бы мне получить значение $ {RESULTS_PATH} из кода Python? Как правильно сделать что-то подобное?
Прямо сейчас мой способ решения этой проблемы - установить RESULTS_PATH в качестве переменной среды. Итак, у меня есть что-то вроде:
Беги как:
RESULTS_PATH=/wherever/this/points pybot test.txt
Файл :test.txt
***Settings***
Library logger
...
Файл :logger.py
results_path = os.environ["RESULTS_PATH"]
# Other set up stuff