我有一个无线电元素
<input type="radio" name="gender" value="male" />
下面是我的赛普拉斯代码
cy.getAllByRole("radio").first().click()
如何获取radio元素的value属性? 像这样的东西
const radioValue = cy.getAllByRole("radio").first().getValue() //"male"
你可以试试这个:
cy.getAllByRole('radio')
.first()
.invoke('val')
.then((val) => {
cy.log(val) //logs male
})
为了明确起见,
value="male"
是一个属性,所以你可以使用
cy.getAllByRole('radio')
.first()
.invoke('attr')
.should('eq', 'male') // assert it
.then(value => cy.log(value)) // or pass it down the chain
命令
.invoke('val')
正在获取 属性,并且仅适用于 selected 单选选项,默认情况下是第一个选项。
如果你尝试第二个选项,它会失败。