返回值在Cypress Javascript中为undefined [重复]

mdfafbf1  于 2023-03-21  发布在  Java
关注(0)|答案(1)|浏览(145)

此问题在此处已有答案

(41个答案)
19小时前关门了。
我是一个新的Cypress,我创建了一个通用函数,它检查Cypress中的行数并返回计数。我使用for循环,然后返回链下的count。这个函数正确地计算了count,但是如果我在第二个函数下调用,我会得到undefined或null我已经定义了一个全局变量和下面的泛型函数,我试图在第二个函数下返回count调用,其中我将****rowcount_瓦尔作为undefined

let rowcount_val = 0

function checkrowcount() {
    var count = 0;
    var val = ""
    for (let i = 1; i <= 10; i++) {
        cy.get(".rt-tbody>div:nth-child(" + i + ")>div>div:nth-child(1)").then((
            e) => {
            val = e.text();
            if (val.length > 1) {
                count++
            }
        })
    }
    cy.then(() => {
        return cy.log("count*" + count).then(() => {
            return count;
        })
    })
}
When('click on Add button', function() {
    cy.then(() => {
        rowcount_val = checkrowcount();
        cy.log("rowcountvalue is ******" + rowcount_val)
    })
})
bnlyeluc

bnlyeluc1#

您正在使用函数的未定义返回值重写全局变量。
为了使它工作,改变

rowcount_val = checkrowcount();

checkrowcount();

相关问题