如果页面结果为“找不到匹配的记录”或“没有可用数据”,则我无法建立成功进行测试的条件。 赛普拉斯中是否存在“或”运算符? (文档中没有)
我尝试使用nodejs进行逻辑运算,但是在第一个条件下cypress抛出错误。
if (cy.get('.v-table__overflow > table > tbody > tr > td').contains('No matching records found') || cy.get('.v-table__overflow > table > tbody > tr > td').contains('No data available')) {
cy.log('Record does not exist as Expected!');
} else {
cy.pause();
}
答案 0 :(得分:2)
您的赛普拉斯代码完全不正确。我建议您检查assertations在赛普拉斯中的工作方式。
更新: 您可以通过执行以下操作来实现它:
cy.get('.v-table__overflow > table > tbody > tr > td').shold('have.not.text', 'No matching records found').and('have.not.text', 'No data available');
或
cy.get('.v-table__overflow > table > tbody > tr > td').invoke('text').then((text) => {
expect(text).not.equal('No matching records found')
expect(text).not.equal('No data available')
})
此外,我看到您正在检查未显示特定消息。相反,请考虑检查是否显示了某些元素。这样测试会更清楚。