cy.select() 只能在 上调用<select>。您的主题是:<div class= "col-md-6" >...</div>



我正试图通过Cypress并使用此从多选下拉列表中选择一个值

cy.get(':nth-child(7) > .row > :nth-child(1)')
.select('The Watermark at Cherry Hills', { force: true })
.invoke('val')
.should('0', 'The Watermark at Cherry Hills')

失败了。有人能指导我如何处理这件事吗?

<div data-vv-name="Community 1" class="">
<div class="ui fluid search selection dropdown form-control">
<i class="dropdown icon"></i><input autocomplete="off" tabindex="0" name="" class="search">
<div data-vss-custom-attr="" class="text default">Select community/s
</div>
<div tabindex="-1" class="menu hidden" style="display: none;">
<div data-vss-custom-attr="" class="item">
The Watermark at Cherry Hills
</div>
<div data-vss-custom-attr="" class="item">
The Fountains at Albemarle
</div>
<div data-vss-custom-attr="" class="item">
The Sapphire Valley
</div>
</div>
</div>
</div>

首先,您必须对下拉列表执行click()操作才能展开它。现在,使用each()可以循环浏览下拉列表的所有元素,并使用if条件单击要选择的元素。

cy.get('.search.selection.dropdown').click() 
cy.get('div.item').each(($ele) => {
if ($ele.text() == "The Watermark at Cherry Hills") {
cy.wrap($ele).click()
}
})

最新更新