Установите вывод и формат в Python, особенно в environment.py
Я могу запустить свой код поведения с параметрами --format и --outfile и работать как положено.
behave 00-test.feature --format json --outfile "C:/results.json"
Который даст мне результаты в формате JSON в C:/results.json.
Я хочу, чтобы избежать передачи этих переменных через поведение.ini и командной строки. Я хочу установить эти переменные в enviroment.py, чтобы я мог просто выполнить следующее из любого места:
behave 00-test.feature
В файле environment.py я перепробовал все возможные комбинации, и все они сводятся к этим трем переменным, но не повезло.
def before_all(context):
...
context.config.outfiles = ["C:/results.json"]
context.config.outputs = [StreamOpener("C:/results.json")]
context.config.formatters = ['json']
...
Почему StreamOpener? https://github.com/behave/behave/blob/master/behave/configuration.py показывает, что выходные данные представляют собой список объектов StreamOpener.
Кто-нибудь знает правильный способ установки выходных файлов и форматеров в Python-ведут себя?
1 ответ
Это решение? Я запускаю его из другого модуля, как это
from behave import __main__ as behave_executable
behave_executable.main(args="--format json --outfile results.json")