Как иметь константу в сценариях функций в Behave

Есть ли способ установить глобальную переменную/константу в .feature файлах в Behave?

Для аналитической службы у меня есть много таких сценариев, как этот.

Scenario: Some scenario
  Given do some action
  And wait for 90 seconds while the action results are ready
  Then verifying some result

А недавно требования обновились и сервис может ждать дольше. Это требование может быть изменено в будущем. Есть ли способ не находить и не заменять все «подождать 90 секунд», а иметь какую-то константу в файле функций, которую я могу обновить в одном месте?

Мой текущий подход заключается в реорганизации шага в wait for a reasonable time while the action results are ready и установке константы разумное время в Python. Но при таком подходе из журналов тестов неясно, каково разумное время для конкретного прогона.


person Yann    schedule 04.02.2020    source источник
comment
Я делаю то же самое, что и вы (устанавливаете константу в пошаговом файле). Я согласен с вами, что этот подход не особенно ясен при просмотре файла функций и/или журналов, но я не верю, что поведение построено таким образом, чтобы делать то, что вы хотели бы.   -  person Levi Noecker    schedule 04.02.2020


Ответы (1)


Ожидание постоянного времени — плохая практика.

Правильное определение сценария должно быть:

Scenario: Some scenario
  Given do some action
  And wait for the action results are ready
  Then verifying some result

В шаге реализации «ожидания готовности результатов действия» должно быть выполнено активное ожидание, которое завершится, когда будут готовы результаты.

person Manzanero    schedule 04.03.2020