赛普拉斯:如何根据数组长度添加循环?
Cypress: How to add loop based on the array length?
我有这段代码,我得到 'ul[class="menu"] > li' 得到文本并将其转换为数组 'list'
it('List to array', () => {
const list = []
cy.get('ul[class="menu"] > li').children()
.each(($ele) => {
list.push($ele.text().toString().trim())
})
.then(() => {
cy.get('ul[class="menu"] > li').should('contain',list[0])
cy.log(list[0])
})
})
现在我想添加一个循环,直到它完成我在列表中的数组,它将根据我最后的代码断言(应该),因为列表的长度不断变化,我不想要重复的代码
我怎样才能做到这一点?
查看 each() 的文档,赛普拉斯传入每个元素及其索引。
使用索引从列表中获取值。
cy.get('ul.menu > li') // same as 'ul[class="menu"] > li'
.each(($el, index) => {
expect($el.text()).to.eq(list[index])
})
我有这段代码,我得到 'ul[class="menu"] > li' 得到文本并将其转换为数组 'list'
it('List to array', () => {
const list = []
cy.get('ul[class="menu"] > li').children()
.each(($ele) => {
list.push($ele.text().toString().trim())
})
.then(() => {
cy.get('ul[class="menu"] > li').should('contain',list[0])
cy.log(list[0])
})
})
现在我想添加一个循环,直到它完成我在列表中的数组,它将根据我最后的代码断言(应该),因为列表的长度不断变化,我不想要重复的代码
我怎样才能做到这一点?
查看 each() 的文档,赛普拉斯传入每个元素及其索引。
使用索引从列表中获取值。
cy.get('ul.menu > li') // same as 'ul[class="menu"] > li'
.each(($el, index) => {
expect($el.text()).to.eq(list[index])
})