Robot Framework: параметризованные элементы GUI - PullRequest
0 голосов
/ 27 сентября 2018

в Katalon - это очень хороший способ параметризации селекторов для элементов GUI, так что вы можете легко выбирать очень похожие элементы с помощью аргументов помощи.Я хочу сделать нечто подобное в Robot Framework.

РЕДАКТИРОВАТЬ: лучший пример, который легче понять:

У нас есть несколько элементов GUI, с которыми мы должны взаимодействовать при тестировании.Поскольку селекторы элементов очень похожи, мы хотим параметризовать определенные его части.В этом случае мы хотим параметризовать часть селектора $ (селектор):

*** Variables ***
$(overview.element}    //div[contains(@class, $(selector)')]

Мы хотим сделать это, чтобы избежать чего-то подобного

*** Variables ***
$(overview.home}    //div[contains(@class, home')]
$(overview.settings}    //div[contains(@class, settings')]
$(overview.overview}    //div[contains(@class, overview')]

Мы хотим задать этот параметр в тестовых примерах.Значит: мы можем указать, какой элемент мы хотим выбрать.Примерно так:

    [Arguments]   ${selector}
Click    $(overview.element)(${selector})

Возможно ли это?И если да: как?

1 Ответ

0 голосов
/ 27 сентября 2018

Вы можете использовать встроенное ключевое слово Заменить переменные , чтобы выполнить подстановку перед использованием локатора.Чтобы это работало, вам нужно будет экранировать ссылку на переменную при определении ${overview.element}

Пример:

*** Variables ***
${overview.element}    //div[contains(@class, \${selector}')]

*** Keywords ***
Example keyword
    [Arguments]  ${selector}
    ${locator}=  Replace variables  ${overview.element}
    log  locator is ${locator}

*** Test cases ***
Example
    example keyword  settings

Когда вы запустите вышеприведенное, журнал должен показать это:

enter image description here

...