#javascript #cypress
Вопрос:
Я пытаюсь прочитать свойство value (innerHTML/innerText) элемента, используя следующее, но получаю пустую строку. cy.get('#INGLoanRequests-container').shadow().find(Selectors.postCode).invoke('val').then(value => { console.log("post code is " value) })
где почтовый индекс-это просто css-селектор. Проверив консоль, я вижу
это означает, что элемент найден, но значение не считывается. Но в инструментах разработки firefox я могу получить доступ к значению темы, вот так.
Будьте добры, если кто-нибудь заметит, что я здесь делаю не так, это было бы здорово.
Ответ №1:
Чтобы получить значение innerHTML, вы должны использовать .invoke('text')
—
cy.get('#INGLoanRequests-container').shadow().find(Selectors.postCode).invoke('text').then(value => {
console.log("post code is " value)
})
Ответ №2:
На самом деле ты хочешь
.invoke('html')
получить.innerHTML
.invoke('text')
получить.innerText
.invoke('val')
чтобы получить свойство value объекта<input>