Текст в полях ввода текста в пользовательском интерфейсе углового приложения не отображается в селекторах DevTools – как достичь этого в тестах автоматизации?

#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') соответствие.

DevTools -gt;

Это общий подход, угловые элементы могут вносить некоторые различия, но в любом случае попробуйте взглянуть на свойства элемента.