2011-07-14 3 views
5

Я использую Capybara для тестирования интеграции рельсов. Когда дело доходит до AJAX запросов, я получаю следующее сообщение об ошибке:Использование Capybara для тестов интеграции AJAX

Capybara::TimeoutError: failed to resynchronize, ajax request timed out 

Любая идея, что не так и как это можно исправить?

ответ

8

У меня была эта же проблема, как только я обновил свои драгоценности селена/capybara. Существует некоторая логика синхронизации AJAX, которая вызывает это, поэтому я просто отключил ее в своем тестовом кэше.

Before do 
    page.driver.options[:resynchronize] = false 
end 
+0

Большое спасибо Джейсону !! –

+2

Этот бит кода входит в функции/step_definitions/mydefiniation.rb – SooDesuNe

+1

неизвестная опция: {: resynchronize => false} (ArgumentError) ./features/step_definitions/application_steps.rb:55:in '/^Я включен (. +) $/' – shigazaru

2

Если вы находитесь на железной дороге 3

изменения этого в файле самоцвета.

камень 'водосвинка': мерзавец => 'мерзавец: //github.com/jnicklas/capybara.git': филиал => 'async_is_my_bitch'

затем сделать расслоение обновления.

Это решит проблему.

+5

Это сейчас в текущих выпусках Capybara - больше не нужно получать филиал. –

Смежные вопросы