2017-01-04 4 views
-5

Я пытаюсь автоматизировать приложение Angular2 с использованием Robot Framework. Тем не менее, он не находит какие-либо ключевые слова в моем тестовом случае.Поддерживает ли Robot Framework Angular2?

Он выдает ошибку, как:

does't match elements(id=accountinfo)

+0

Я пытаюсь автоматизировать приложение углового 2 с использованием рамки робота. Он не находит ключевых слов. Это дает ошибку, как. не соответствует элементам (id = accountinfo) –

+0

Не могли бы вы объяснить, как вы установили структуру, как вы вызываете угловые элементы внутри тестового примера. Или даже тестового примера будет достаточно ... Нам нужно что-то работать с ... – Goralight

+0

Я добавляю расширенную библиотеку selenium 2 Мы идентифицируем элемент через id, xpath, css и т. Д. Значение Ошибка идентификатора элемента элемента = XXXXXX xpath = // XXXXXX не соответствует никаким элементам –

ответ

0

Спасибо за все,

рамка робота будет поддерживать angular2, Я использую webpack с угловым2, я меняю URL-адрес конфигурации с ur url на рабочий url, который работает для меня.

http://hostname/webpack-dev-server/index.html

http://hostname/

-1

Сначала попробуйте ваш XPath (или другой селектор) для использования в консоли разработчика (например, Chrome Dev консоль - хит F12 на странице и в «элементы» хит CTRL + F и скопируйте xpath (селектор) в строку поиска). Если элемент не найден здесь, у вас есть неправильный селектор ... в противном случае попробуйте использовать некоторые ожидания в коде робота (например, подождать, пока элемент не виден)

+0

Я использовал х путь (селекторы), он не находит, но я могу найти слова. –

0

Я использую Robot Framework для автоматизации Угловое применение в течение последних нескольких месяцев. Вот несколько инструментов, которые помогут вам.

Во-первых, Selenium2Library на самом деле устарел. Существует новая версия ExtendedSelenium2Library, которая включает новые ключевые слова и поддерживает угловые приложения. Чтобы переключиться, измените все экземпляры текста «Selenium2Library» в вашем коде на «ExtendedSelenium2Library». Вам также может потребоваться загрузить его отдельно, но это было какое-то время, поэтому я не помню.

Во-вторых, вам нужно научиться читать и писать xpaths по крайней мере в некоторой степени. Я не буду полностью объяснять это здесь, но вот инструмент, который сделает для вас большую часть работы. Он не будет работать все время, но он будет работать большую часть времени для элемента, который включает текст.

Click Element by Text 
    # EXAMPLE USAGE 
    # Click Element by Text "text on the element" id="midlevellocationoftext"  button 
    # NOTE: Does not account for extra spaces at the beginning or end, text must be exact 
    # NOTE: Allows for injections on purpose to allow user to be more exact with their location 
    [Arguments]  ${text}  ${location}=* ${elementtype}=* 
    Click Element xpath=//*[@${location}]//${elementtype}[text()=${text}] 

Если у вас нет местоположения среднего уровня, но у вас есть тип кнопки, поставьте *. Это синтаксис xpath для «Я не знаю».

SELF-EDIT: почти забыл, но в HTML, идентификаторы не используют тот же синтаксис, что и Robot Framework. id = someId не обязательно равно id = "someId". Попробуйте помещать кавычки вокруг текста идентификатора.

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ: В моем более позднем Угловом опыте идентификаторы и домены могут быть изменены. Один и тот же локатор может работать с одним тестом, но если вы запустите другой тест, он не будет работать.

Смежные вопросы