Вы не можете иметь никакой логики программирования в файле аргументов. Вместо (или в дополнение к) использования файла аргументов для этого вы можете рассмотреть переменный файл . Файлы переменных представляют собой код Python, поэтому вы можете использовать любую логику, необходимую для установки переменных.
Например, вы можете передать имя среды из командной строки и использовать его в своем тесте для импорта переменных для этой среды.
Пример
test.robot:
*** Settings ***
Variables ${ENVIRONMENT}_vars.py
...
smoke_vars.py:
def get_platform_version(platform):
<your logic here>
return $version
PLATFORM_NAME = "Android"
PLATFORM_VERSION = get_platform_version(PLATFORM_NAME)
командная строка:
robot --variable environment:smoke test.robot
Вы также можете указать файл переменной в командной строке, а не в тестовом файле. Например, вы можете удалить параметр Variables
, а затем сделать это в командной строке:
robot --variablefile smoke_vars.py ...
Все это очень подробно задокументировано в руководстве пользователя для каркаса робота