I’m trying to use Cucumber with Selenium to test my app. I have a
method
called “login_as” defined as follows:
def login_as(user, password)
visit new_session_path
fill_in “username”, :with => user.username
fill_in “password”, :with => password
click_button(‘Go’)
response.body.should =~ /Signed in as <a
href="[^"]+">#{user.username}</a>/
end
This works fine when I’m not using Selenium, but it fails when I do use
Selenium. Weirder still is that if I use Selenium but put a “debugger”
step
before the “click_button” step, and I execute the last two lines through
the
console, everything works. When it fails, the error seems to indicate
that
nothing on the page has changed – that is, that “response” is still the
old
response from before I executed the “click_button” step. My best guess
is
that the code perhaps isn’t waiting for the browser to actually load the
new
page before looking at the response. Does anyone know how to fix this
issue?
Thanks…