The problem was that after changing page with the selects, capybara needs to “find something which has changed on the page” in order to “wait”. The “have_selects” did not wait because they did not change (you change them, then the page changes, and they stay the same)