如何比较赛普拉斯中两个元素列表的文本值?

问题描述

我有这样的代码:

let firstUserPrices

cy.get('.fw-price').each($value => {
    firstUserPrices = $value.text()
})

let secondUserPrices
cy.get('.fw-price').each($value => {
    secondUserPrices = $value.text()
    expect(firstUserPrices,'PRICES').to.equal(secondUserPrices)
})

cy.get('。fw-price')有10个元素,我想一一比较。但是我得到的是firstUserPrices(它是最后一个值形式列表)的10倍相同的值吗?

解决方法

您可以尝试一下,假设两个列表的长度相等-

cy.get('list1').then((list1) => {
   cy.get('list2').then((list2) => {
      for (var i = 0,i < list1.length,i++) {
         expect(list1.eq(i).text()).to.equal(list2.eq(i).text())
      }
   })
})
,

我弄清楚了,不得不将firstUserPrices放入一个数组并将元素推入该数组

let firstUserPrices = []

cy.get('[data-t="my-price"] span span').each($value => {
    firstUserPrices.push($value.text()) 
})

//do some stuff here

cy.get('[data-t="my-price"] span span').each(($value,index) => {
    const secondUserPrices = $value.text()
    expect(firstUserPrices[index],'PRICES').to.not.equal(secondUserPrices)
})

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...