javascript - 如何根据数据属性检查cypress中元素的顺序

标签 javascript cypress

假设我有一个 id 为“container”的父 div,它有 4 个具有名为“data-test”的特定数据属性的子元素,我如何检查每个子元素的顺序是否正确?假设正确的顺序应该如下:

  1. 黑色皮革
  2. Jade 石
  3. 钻石 Blade
  4. 火剑

enter image description here

在我的测试中我有类似的东西

it('Should have the specific order...., ()=>{
  cy.get('#container').should('exist')
    .contains( .. not sure what to put here )
})

最佳答案

属性选择器需要方括号,并且它们不“have.text”,而是您必须调用 .attr() 方法来获取属性值。

cy.get('#container [data-test]').eq(0)
  .invoke('attr', 'data-test').should('eq', 'diamond-blade')

cy.get('#container [data-test]').eq(1)
  .invoke('attr', 'data-test').should('eq', 'fire-sword')

cy.get('#container [data-test]').eq(2)
  .invoke('attr', 'data-test').should('eq', 'emerald-stone')

cy.get('#container [data-test]').eq(3)
  .invoke('attr', 'data-test').should('eq', 'black-leather')

关于javascript - 如何根据数据属性检查cypress中元素的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75002916/

相关文章:

testing - cy.intercept 不是 Cypress 测试的函数

javascript - 如何为列的每一行设置id

javascript - 在 Cypress 中创建随机字符串并将其传递给 cy 命令

javascript - 使用 Cypress 登录 WordPress,无需使用 UI

javascript - 如何使用 cypress [cypress] 选择文本

javascript - 如何修复 javascript .toFixed is not a Function 错误

javascript - 在客户端和服务器之间传输日期时间的最佳方式 (c#/javascript)

javascript - JavaScript fetch()无法捕获404错误

javascript - 在 RxJS 中是否有与 `race` 运算符相反的运算符?

javascript - 如何保证Cypress请求执行的顺序