我需要选择一个按钮内的图像。问题在于,有六个相似的图像,它们除了alt消息和来源外没有任何唯一的标识符。这是我正在使用的代码。
<div class="dropup-content" style="height: auto; max-height: 1000px;">
<button type="button">
<img src="images/en_US.png" alt="English" style="width: 45px; height: 30px;">
</button>
<button type="button">
<img src="images/nb_NO.png" alt="Norwegian" style="width: 45px; height: 30px;">
</button>
<button type="button">
<img src="images/fi_FI.png" alt="Finnish" style="width: 45px; height: 30px;">
</button>
<button type="button">
<img src="images/fr_FR.png" alt="French" style="width: 45px; height: 30px;">
</button>
<button type="button">
<img src="images/nl_BE.png" alt="Dutch" style="width: 45px; height: 30px;">
</button>
<button type="button">
<img src="images/de_DE.png" alt="German" style="width: 45px; height: 30px;">
</button>
</div>
现在,如果我需要选择alt值为“瑞典”的按钮,我该怎么做? 例如,我可以使用此代码获得第一个
cy.get('.dropup-content').first().click()
但是问题是序列每次都随机出现。因此,我不能依赖first()或next()方法。赛普拉斯有什么办法可以单击图像属性为“瑞典”的按钮?
答案 0 :(得分:2)
您可以这样做:
cy.get('[alt="Swedish"]').click()
答案 1 :(得分:2)
尝试
cy.get('button[alt="Swedish"]').click()
但是,如果您可以控制这些按钮的创建方式,建议您将data-cy
标记添加到它们中,然后通过
cy.get('button[data-cy="Swedish"]').click()
中阅读原因