Я начинаю изучать Cypress. У меня есть таблица из 4 строк (с классом данных). Я могу проверить количество строк таким образом:
cy.get('.datatable').find('tr').each(function(row, i){
expect(i).to.be.lessThan(4)
})
Это хорошо, но это кажется неудобным, так как я просто хочу подсчитать длину и не нуждаюсь в доступе к материалам в строках, и я предполагаю, что быстрее сделать что-то, чем делать 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}
. Я не знаю, куда идти отсюда. Похоже, это было бы очень распространенным делом.