我开始学习Cypress。 我有一个4行表格(具有datatable类)。 我可以这样验证行数:
cy.get('.datatable').find('tr').each(function(row, i){
expect(i).to.be.lessThan(4)
})
这样做没问题,但感觉不太方便,因为我只想计算长度而不需要访问行内的内容,我觉得一个操作比四个操作快。
如果我记录选择的内容(不确定怎么称呼):
cy.log(cy.get('.datatable').find('tr'))
输出结果是[object Object]
,我不太确定如何分解它,这提示我可能在思考这个问题时出现了错误。
如果我尝试:
expect(cy.get('.datatable').find('tr')).to.have.lengthOf(4)
我收到了一个错误信息:AssertionError: expected { Object (chainerId, firstCall) } to have a property 'length'
如果我尝试:
expect(Cypress.$('.datatable > tr')).to.have.lengthOf(4)
我得到了AssertionError: expected { Object (length, prevObject, ...) } to have a length of 4 but got 0
,那么至少它在这里有一个长度吗?
如果我记录选择的方法,我会得到Object{4}
。 我不确定接下来该怎么做。 看起来这应该是一个非常常见的问题。