例如,如果我给出完整的类名:title-text-panel-container class-about-benefits > ul
cypress无法识别该元素,并抛出以下错误
C ypressError:超时,重试:预期找到元素:“。title-text-panel-container class-about-benefits> ul”,但从未找到。
为什么赛普拉斯无法确定我们是否在测试中给出full class name
?但这通过了测试,因为我们按照测试2给出了类名。
测试1: 失败
cy.get('.title-text-panel-container class-about-benefits > ul').find('li').its('length').should('be.gte', 1);
测试:2次通过
cy.get('.title-text-panel-container > ul').find('li').its('length').should('be.gte', 1);
答案 0 :(得分:1)
.classA .classB
选择器意味着classB
是classA
的后代。如果要为单个DOM元素指定多个类(以提高特异性),则不得在它们之间添加空格:.classA.classB
。
您的情况是:
cy.get('.title-text-panel-container.class-about-benefits > ul').find('li').its('length').should('be.gte', 1);
答案 1 :(得分:-1)
尝试
cy.get('.title-text-panel-container .class-about-benefits > ul')