say I have the HTML:
I had the same problem and solved it by creating a custom cypress command. No as pretty as I would like, but it did the job.
Cypress.Commands.add("selectNth", (select, pos) => {
cy.get(`${select} option +option`)
.eq(pos)
.then( e => {
cy.get(select)
.select(e.val())
})
})
then I used in the test as such
cy.viewport(375, 667)
.selectNth("customSelector", 3)
The option +option part was the only way I could find to get the full list of options inside a select and it's currently the bit of code i'm trying to work arround although it works fine.