gpt4 book ai didi

arrays - Cypress 中的迭代数组

转载 作者:行者123 更新时间:2023-12-03 08:00:23 35 4
gpt4 key购买 nike

我将 Div 元素插入数组中,然后逐个迭代,但是当我从第一个每个部分出来时,数组长度变为 0,并且我无法进入 for 循环。

在 for 循环中,我想单击每个 div 中的一个部分并执行断言并返回到上一部分。

let Array =[]
cy.get('.tag-wrapper-item').each(($pills) => {
cy.log($pills)
// cy.log('Success')
Array.push($pills)
cy.log(Array.length)

})
cy.log(Array.length)
for (const element of Array) {
cy.wrap(element).click()
cy.wrap(element).find('.--tag.tag-link.--active.tag-selector-button-link').click()
var OneOffModel = element.text()
cy.get('.heading-markdown').contains(OneOffModel)
cy.go('back')
}

最佳答案

更好的方法可能是获取 .tag-wrapper-item 的计数并对其进行循环

cy.get('.tag-wrapper-item')
.its('length')
.then(count => {
for (let index = 0; index < count; index++) {
cy.get('.tag-wrapper-item').eq(index)
.click()
cy.get('.tag-wrapper-item').eq(index)
.find('.--tag.tag-link.--active.tag-selector-button-link')
.click()
cy.get('.tag-wrapper-item').eq(index)
.invoke('text')
.then(OneOffModel => {
cy.get('.heading-markdown').contains(OneOffModel)
})
cy.go('back')
}
})

如果您为循环中的每个元素添加别名,当您读取别名时,Cypress 将尝试克服 detached-from-DOM 错误

cy.get('.tag-wrapper-item')
.its('length')
.then(count => {
for (let index = 0; index < count; index++) {

cy.get('.tag-wrapper-item').eq(index)
.as('current')
.click()

cy.get('@current')
.find('.--tag.tag-link.--active.tag-selector-button-link')
.click()

cy.get('@current')
.invoke('text')
.then(OneOffModel => {
cy.get('.heading-markdown').contains(OneOffModel)
})

cy.go('back')
}
})

关于arrays - Cypress 中的迭代数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74472039/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com