Как я могу добавить необязательный параметр списка к своему ключевому слову в robotframework? - PullRequest
0 голосов
/ 26 марта 2019

Я пытаюсь добавить необязательный словарь и список к своему ключевому слову, как можно назначить значения по умолчанию?

Ответы [ 2 ]

3 голосов
/ 26 марта 2019

В RF User Guide вы можете найти примеры того, как вы можете добавлять аргументы со значениями по умолчанию.Короче говоря, после переменной вы должны добавить «=» и значение по умолчанию.Вот пример:

One Required And One With Default
[Arguments]    ${required}    ${optional}=default
[Documentation]    This keyword takes 1-2 arguments
Log    Required: ${required}
Log    Optional: ${optional}
0 голосов
/ 30 марта 2019

В то время как другой ответ правильно охватывает параметры ключевых слов со значениями по умолчанию, ваш вопрос относится к стандартному списку одному.

И это не допускается синтаксисом Robot Framework (а в python значение по умолчанию, являющееся предопределенным списком, является источником многих проблем и скрытых ошибок:) . Таким образом, решение для этого состоит в том, чтобы иметь параметр, значение по умолчанию которого равно None (обычно, действительно, все, что вызывающий абонент не передаст, будет делать) , и проверьте, установлено ли оно в вызове; если нет - присвойте его списку по умолчанию внутри ключевого слова:

My Keyword That Accepts Optional List
    [Arguments]    ${the_list}=${None}

    ${the default value}=    Create List   member0    the other one
    ${the_list}=    Set Variable If    $the_list is None    ${the default value}    # no argument passed when the keyword was called
                            ...        ${the_list}    # an argument was passed, leave the variable as it was
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...