Вы не детализировали то, что вы пробовали до сих пор, и какие у вас проблемы с прокруткой в настоящее время, но я предполагаю, что прокрутки вниз по окну и добавления некоторой логики для ожидания, пока больше ссылок не станет видно, достаточно.
Эта команда прокручивает все окно вниз до 5000 мс:
cy.scrollTo('bottom', {duration: 5000})
Обратите внимание, что он не связан с таким элементом, как:
cy.get('#some-scrollable-element').scrollTo(...)
Я погуглил страницу с похожим поведением динамической бесконечной прокрутки, возможно, вы могли бы основать свой код на следующем фрагменте:
describe('', () => {
before('', () => {
cy.server()
cy.route('GET', '**/blog/page/**').as('blog')
})
it('', () => {
let numberOfChildren = 4
cy.visit('http://www.drewleague.com/blog/')
for (let i = 0; i < 5; i++) {
cy.get('.posts--desktop')
.children()
.then(children => {
cy.wrap(children)
.its('length')
.should('eq', numberOfChildren)
})
cy.scrollTo('bottom', {duration: 5000})
.wait('@blog')
.then(() => numberOfChildren += 4)
}
})
})
Этот код прокручивает страницу вниз до 5 раз, и в каждой итерации мы проверяем количество динамически добавляемых дочерних элементов, а также ожидаем завершения запроса xhr. Не очень полезно само по себе, но вы поняли идею.