Javascript 在Cypress中保存变量
我想实现我的测试比较列表的长度。要获得列表的长度,我将执行以下操作:Javascript 在Cypress中保存变量,javascript,typescript,cypress,Javascript,Typescript,Cypress,我想实现我的测试比较列表的长度。要获得列表的长度,我将执行以下操作: const oldListCount = cy.get('.grid-row').its('length'); 在测试的后面,我想比较oldListCount和当前长度 newListCount.should('be.gt',oldListCount); 但是Cypress说“oldListCount”是一个[对象] 我还尝试使用别名并进行封装。然后 像这样: cy.get('.grid-row').its('leng
const oldListCount = cy.get('.grid-row').its('length');
在测试的后面,我想比较oldListCount和当前长度
newListCount.should('be.gt',oldListCount);
但是Cypress说“oldListCount”是一个[对象]
我还尝试使用别名并进行封装。然后
像这样:
cy.get('.grid-row').its('length').then(newListCount => {
oldLC.then(oldListCount => {
newListCount.should('be.gt', oldListCount.toString());
})
});
但这两种方法都有效。。
同样值得一提的是,当im在封装的中记录两个列表计数时,
计数相等,UI和Cypresslogs向我显示其他内容
对于我的测试,计数是否是一个特定的数字并不重要,更重要的是新的计数大于旧的计数
谁能给我指一下正确的方向吗?我想这样的事情会解决的 首先,需要将旧列表另存为别名
cy.get('.grid-row').as('oldList')
然后在稍后的测试中
cy.get('@oldList').its('length').then(oldLength => {
cy.get('.grid-row').its('length').should('be.gt' , oldLength)
})
我通过创建标准化行为的测试解决了这个问题。
所以我不需要保存计数,因为我希望总是有一个给定的响应,这应该是更好的做法,不是吗?我在测试中尝试过,但当它比较两个列表长度时,计数总是等于当前网格长度。别名不保存旧列表计数。