#angular #selenium #css-selectors #devtools #automation-testing
#угловой #селен #css-селекторы #devtools #автоматизация-тестирование
Вопрос:
Я хочу написать тест автоматизации ввода текстовых полей в Angular с использованием C# Selenium. Проблема в том, что написанный текст приложения Angular в пользовательском интерфейсе не виден в DevTools, а не во входных данных, поэтому тест автоматизации не может достичь его с помощью CSS-селектора или Xpath. Как добраться до этого текста в DevTools в тестах автоматизации?
Комментарии:
1. Пожалуйста, поделитесь более подробной информацией о вашей проблеме. Например, источник страницы может быть полезен.
Ответ №1:
Обычно текстовое значение поля ввода не отражается атрибутами элемента (атрибутами DOM), поэтому его нельзя отследить с помощью какого-либо селектора.
Но вы можете найти значение в свойстве элемента.
Чтобы прочитать значение, которое вы можете вызвать getAttribute
WebElement
.
driver.findElement(by).getAttribute('value')
Если вы хотите найти конкретный элемент по значению (используйте значение в качестве селектора), вы должны получить все элементы с одним и тем же селектором
driver.findElements(by)
а затем повторите и проверьте getAttribute('value')
соответствие.
Это общий подход, угловые элементы могут вносить некоторые различия, но в любом случае попробуйте взглянуть на свойства элемента.