我有多个登录页面,如下:
第一个登录页
输入元素如下:
<input placeholder="name@email.com" class="input" name="email" type="text" value="">Cypress选择器如下:
cy.get('input[name="email"]').as('email').click();第二个登录页面:
输入元素如下:
<input id="email" type="email" required="required" class="input">Cypress选择器如下:
cy.get('input[id="email"]').as('email').click();如果我们注意到,第一个输入元素具有name=email,而第二个输入元素具有id=email。
是否有一种方法可以编写一个柏树选择器,如果找不到它可以查找选择器input[name="email"],它可以查找input[id="email"]
发布于 2021-12-27 08:32:52
是的,有。根据文档的说法,它被称为柏树条件测试。
根据您可能想要的内容,有许多方法可以像在文档中看到的那样完成这一任务。
下面是我们可以做的事情
cy.get('input[name="email"]').then(($btn) => {
if ($btn.length) {
// do something if it's active
$btn[0].click();
} else {
// do something else
cy.get('input[id="email"]').as('email').click();
}
})https://stackoverflow.com/questions/70492400
复制相似问题