Помогите, пожалуйста. Решил попробовать Cypress.
Навалял ПО структуру. Все работает, кроме одно момента - не могу сохранить значение текста на одной странице (цена), для сравнения на другой странице.
Документация предлагает 2 решения: cy.get(locator).invoke('text').as('varName') cy.get(locator).then($el => $el.get(0).innerText)
Я пробовал глобальные переменные с переназначением в then.
Пробовал возвращать значения и сохранить все в переменную.
Пробовал кучу всего. Правда.
Но не как не получилось получить значения.
Или Cypress никак нельзя запихнуть в ПО?
Буду благодарен за любую помощь.
P.s.: invoke('text').as('varName') можно потом использовать через this.varName, но this у меня - класс, на инстансе которого, конечно же, нет такого значения. Может можно достучаться до объекта Cypress с той переменной?
Вероятно, такой подход не сочетается с архитектурой Cypress.
И, вероятно, это не всегда нужно…
Since Cypress chains are asynchronous and they wait for each other, you can’t store an element object into a variable. Instead, you need to use aliases for that.
Спасибо за помощь @sant0ku, а какой, в таком случае, паттерн подходит для Cypress. Не писать же спагетти с вложеностями в тестах?! Или я чего-то не понимаю.