Как использовать значения из одного ключевого слова в другое ключевое слово в среде робота - PullRequest
0 голосов
/ 02 апреля 2019

Я хотел бы использовать значение от ключевого слова 1 до ключевого слова 2. Пробовал поиск в сети, но я не смог его решить.

Verify that apps are listed
    wait until element is visible  ${AppMenuGrid}   ${Timeout}      "Apps NOT listed. Step execution failed"
    log     "Apps listed"
    ${APPSCOUNT} =   GET ELEMENT COUNT  ${AppMenuGrid}
    log     "Number of apps loaded are ${APPSCOUNT}"
    [Return]  ${APPSCOUNT}

Click on Refresh button
    wait until element is visible  ${Refresh}   ${Timeout}      "Refresh button is not visible"
    click element  ${Refresh}
    log     "click on refresh button successful"

Verify that same apps are listed
    wait until element is visible  ${AppMenuGrid}   ${Timeout}      "Apps list not refreshed. Step execution failed"
    log     "Apps list refreshed"
    ${APPSRECOUNT} =   GET ELEMENT COUNT  ${AppMenuGrid}
    ${Count} =  verify that apps are listed     ${APPSCOUNT}
    log     "Number of apps before refresh ${Count}"
    log     "Number of apps after refresh ${APPSRECOUNT}"
    run keyword if  "${APPSRECOUNT}" == "${Count}"      log     "Number of apps matching after refresh"
    ...         ELSE        fail        "All apps not loaded after refresh"

Я хочу использовать значение AppsCount (например, 10) из ключевого слова «Убедитесь, что приложения перечислены» в ключевое слово «Убедитесь, что эти приложения перечислены». Но во втором ключевом слове значение APPSCOUNT всегда пустое.

Ответы [ 3 ]

2 голосов
/ 02 апреля 2019

Измените ключевое слово Verify that same apps are listed, чтобы принять аргументы:

Verify that same apps are listed
    [Arguments]    ${expected appscount}
    # the rest of its code

А затем, в случае его использования, передать значение из первого ключевого слова:

A case
    ${the count}=    Verify that apps are listed
    Verify that same apps are listed    ${the count}
1 голос
/ 02 апреля 2019

Я согласен с подходом Тодора Минакова, чтобы разделить значение с помощью условий возврата.Вот другой подход:

Robot Framework (как описано в Руководстве пользователя ) имеет понятие переменной области действия: локальный (ключевое слово) уровень, уровень тестового набора, уровень набора тестов и глобальный.По умолчанию переменные, определенные в ключевых словах, имеют локальную область.

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

Verify that apps are listed
    wait until element is visible  ${AppMenuGrid}   ${Timeout}      "Apps NOT listed.   Step execution failed"
    log     "Apps listed"
    ${APPSCOUNT} =   GET ELEMENT COUNT  ${AppMenuGrid}
    Set Test Variable    ${APPSCOUNT}

Затем вы можете вызвать ${APPSCOUNT} внутри любого другого ключевого слова в том же тестовом примере, и оно будет иметь сохраненное значение.

0 голосов
/ 02 апреля 2019

Я попробовал следующее, и это сработало.

В файле тестового примера я добавил переменные с тем же именем $ {APPSCOUNT} и присвоил переменным ключевое слово, как показано ниже. Убедитесь, что приложения перечислены$ {APPSCOUNT}

После этого я вижу значение по ключевому слову 1 в ключевом слове 2. Это правильный подход?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...