我试图在cypress上执行条件语句,以检查标题中的登录链接是否为Sign in或Account或class,然后单击它。
if条件不起作用。
cy.get('header').then((header) => {
if (header.find('Sign in').length > 0) {
cy.contains('Sign In')
.click({force:true})
} else if (header.find('Account').length > 0) {
cy.contains('Account')
.click()
} else {
cy.get('.navUser-item--account .navUser-action').click()
}
})
我希望如果找到“登录”,那么它将单击“其他”(如果该帐户可用),然后单击“其他”,它将按班级进行检查。
[总是执行最后一个else条件] [1] [1]:https://i.stack.imgur.com/liEF9.png
[有“帐户”文本,但仍应用了其他条件)[2] [2]:https://i.stack.imgur.com/sXYr8.png
Another code structure and now it always apply the first condition no matter what
答案 0 :(得分:0)
以下代码对我有用。
cy.get('header').then(($a) => {
if ($a.text().includes('Account')) {
cy.contains('Account')
.click({force:true})
} else if ($a.text().includes('Sign')) {
cy.contains('Sign In')
.click({force:true})
} else {
cy.get('.navUser-item--account .navUser-action').click({force:true})
}
})
感谢您的帮助