Как проверить, содержит ли элемент несколько элементов в Cypress.io

Как я могу проверить, содержит ли элемент несколько элементов в Cypress.io, не слишком копируя свой код?

Текущий пример:

cy.get(".column")
  .children()
  .contains("Name");

cy.get(".column")
  .children()
  .contains("Age");

cy.get(".column")
  .children()
  .contains("Weight");

cy.get(".column")
  .children()
  .contains("Height");

cy.get(".column")
  .children()
  .contains("Favorite Color");

person Christian Gentry    schedule 11.07.2019    source источник


Ответы (2)


Вы можете сделать это следующим образом:

cy.get('.column')
  .children()
  .should('contain', 'Name')
  .and('contain', 'Age')
  .and('contain', 'Weight')
  .and('contain', 'Height')
  .and('contain', 'Favorite Color')
person Yevhen Laichenkov    schedule 11.07.2019
comment
Идеальный! Спасибо за помощь!! - person Christian Gentry; 11.07.2019
comment
Это работает, но может привести к ложным срабатываниям, если данные, например, «Возраст». - person Dan Dascalescu; 08.06.2020
comment
@DanDascalescu Да, действительно. Вместо этого вы можете использовать метод .contains и передать селектор следующим образом: .contains('.my-item', 'Age'). - person Daniel Dogeanu; 01.09.2020

вы можете использовать массив с оператором распространения,

cy.get('ele').contains(
    'nested_ele',
    ...['Name', 'Age', 'Weight', 'Height']
)
person None    schedule 08.04.2021