Синтаксис аргументов в фреймворке 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!