【问题标题】:How to check if an element contains multiple items in Cypress.io如何在 Cypress.io 中检查一个元素是否包含多个项目
【发布时间】:2019-07-11 18:20:39
【问题描述】:

如何在 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");

【问题讨论】:

    标签: testing cypress qa


    【解决方案1】:

    你可以这样做:

    cy.get('.column')
      .children()
      .should('contain', 'Name')
      .and('contain', 'Age')
      .and('contain', 'Weight')
      .and('contain', 'Height')
      .and('contain', 'Favorite Color')
    

    【讨论】:

    • 完美!谢谢你的帮助!!
    • 这行得通,但如果数据恰好是“年龄”,它可能会产生误报。
    • @DanDascalescu 是的,确实如此。您可以改用.contains 方法并传递一个选择器,如下所示:.contains('.my-item', 'Age')
    【解决方案2】:

    有时你可以这样做:

         const column = ['Name', 'Age', 'Weight', 'Height']
    
            column.forEach(function (value) {
                cy.get('.column')
                  .children()
                  .should('contain', value)
            })
    

    【讨论】:

      猜你喜欢
      • 2017-08-04
      • 2010-11-20
      • 2015-12-24
      • 1970-01-01
      • 2016-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-08
      相关资源
      最近更新 更多