Синтаксис аргументов в фреймворке Robot Gherkin style

Как я могу поместить аргументы в середине описания шага теста?

Когда я создаю такой шаг, все идет хорошо (аргументы в конце шага):

*** Test Cases ***
Scenario: Login as a valid user
     When user is logged in as:    user1    password1

*** Keywords ***
user is logged in as:
[Arguments]    ${arg_user}    ${arg_pass}
Click Link    id=loginLink
Page Should Contain    Use a local account to log in
Input Text    id=UserName    ${arg_user}
Input Text    id=Password    ${arg_pass}
Click Button    xpath=//*[@id="loginForm"]/form/fieldset/input

Как работает *** Test Cases *** а также *** Keywords *** похож на такой шаг:

When user user1 is logged in with the following password: password1

где user1 - первый аргумент, а password1 - второй.

1 ответ

Решение

При использовании встроенных аргументов вставьте их в имя ключевого слова и не используйте [Arguments], Также хорошей практикой является помещать аргументы в кавычки, хотя это не является строго обязательным. По моему опыту это помогает уменьшить двусмысленность.

Вот пример в формате с разделителями канала:

*** Keywords ***
| When user "${user}" is logged in with the following password: "${password}"
| | ${result}= | Set Variable | username is ${user} and password is ${password}
| | [Return] | ${result}

*** Test Cases ***
| Example of how to use keyword with embedded arguments
| | ${result}= | When user "bob" is logged in with the following password: "superSecret!"
| | Should be equal | ${result} | username is bob and password is superSecret!
Другие вопросы по тегам