柏树中的条件陈述

时间:2019-04-05 18:10:11

标签: cypress

我试图在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

1 个答案:

答案 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})
        }
    })

感谢您的帮助