Кто-нибудь еще испытывает проблему задержки с Webdriver? У меня это работает на огурце с капибарой. И заполнение формы занимает более 30 секунд или даже минут. По какой-то причине он заполнит одно поле и затем остановится перед заполнением другого поля, когда на оба ссылается идентификатор.
Кроме того, из-за этой задержки я сталкиваюсь с ошибками тайм-аута. (Но они ошибочны ...)
В полях нет ничего особенного. Они появляются при загрузке страницы, и на этой странице нет Ajax.
У кого-нибудь есть идеи?
Вот ошибка:
execution expired (Timeout::Error)
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/timeout.rb:60:in `rbuf_fill'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:134:in `rbuf_fill'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:116:in `readuntil'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:126:in `readline'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:2026:in `read_status_line'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:2015:in `read_new'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:1051:in `request_without_webmock'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:1037:in `request_without_webmock'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:543:in `start'
/Users/me/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:1035:in `request_without_webmock'
Редактировать: Это может быть связано с тем фактом, что у меня уже был открыт экземпляр Firefox, когда я запускал тесты Cucumber. Хотя частота тайм-аутов уменьшилась, я все равно получаю их достаточно часто, и думаю, что это все еще проблема.
Редактировать2: Файл компонента будет указывать шаг:
And I complete personal info
Шаг будет далее определен как другие шаги:
And /^I complete personal info$/ do
fill_in('first_id', :with => "foo")
fill_in('second_id', :with => "bar")
...more fill_ins...
end
Капибара иногда находит first_id
, и остальная часть моего сценария выполняется нормально. В других случаях это будет время ожидания. На мой взгляд, это очень непредсказуемо. В других случаях он найдет first_id
, но не найдет second_id
. Кстати, эти id
действительно существуют на странице.
Я должен был включить больше информации об ошибке. Часто это будет выглядеть так:
...all that stuff I included in the error above...
./features/step_definitions/web_steps.rb:107
./features/step_definitions/web_steps.rb:11:in `with_scope'
./features/step_definitions/web_steps.rb:105:in `/^(?:|I )should see "([^"]*)"(?: within "([^"]*)")?$/'
/my feature file:30:in 'Then we verify stuff we just filled out'
Then we verify stuff we just filled out
определяется следующими дополнительными шагами:
And %{I should see "foo"}
And %{I should see "bar"}
Надеюсь, эта дополнительная информация поможет! Если вам нужно что-то еще, пожалуйста, дайте мне знать в комментариях.