Итерация по переменным в Robot Framework Click Element - PullRequest
1 голос
/ 15 января 2020

В рамках теста Robot Framework я хотел бы получить доступ к нескольким объектам со своей страницы с одним и тем же ключевым словом. Путь к объектам выглядит следующим образом:

//div[@class='col-sm-4 ng-scope']//h1[@class='ng-binding'][contains(text(),'Bot1')]
//div[@class='col-sm-4 ng-scope']//h1[@class='ng-binding'][contains(text(),'Bot2')]
//div[@class='col-sm-4 ng-scope']//h1[@class='ng-binding'][contains(text(),'Botx')]

Я пытался установить переменную списка с именем моих тестовых объектов (элементов)

*** Variables ***
@{TESTBOTS} =  Bot1  Bot2  Botx

*** Keywords ***
Delete Bots
    go to  ${LANDINGURL}
    Sleep  3s
    Click Element  //div[@class='col-sm-4 ng-scope']//h1[@class='ng-binding'][contains(text(), @{TESTBOTS})]

Однако я получаю следующая ошибка:

FAIL        Element with locator '//div[@class='col-sm-2 ng-scope']//h1[@class='ng-binding'][contains(text(),'${TESTBOTS')]' not found.

Буду очень признателен, если вы укажете мне правильное направление. Спасибо!

1 Ответ

3 голосов
/ 15 января 2020

Мне кажется, что сообщение об ошибке все еще не соответствует фрагменту.

Но в любом случае: с @{TESTBOTS} вы разворачиваете полный список. Я ожидал бы ошибку, такую ​​как Не найден элемент с текстом 'Bot1 Bot2 Botx'

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

FOR    ${testbot}    IN    @{TESTBOTS}
    Click Element    //div[@class='col-sm-4 ng-scope']//h1[@class='ng-binding'][contains(text(), ${testbot})] 
END
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...