В рамках моих интеграционных тестов для веб-сайта я использую огурец с капибарой. Кажется, что capybara не может эмулировать использование файлов cookie.Печенье в тесте огурца с использованием capybara
Например, я установить куки, когда пользователь подписывает в:
def sign_in(user)
cookies.permanent.signed[:remember_token] = [user.id, user.salt]
current_user = user
end
Однако, когда я позже получить значение куки с помощью cookies.inspect возвращает {} Это известная ограничение водосвинки? Как я могу протестировать подписанного пользователя по нескольким запросам, если это так?
я должен добавить мой тест:
Scenario: User is signed in when they press Sign In
Given I have an existing account with email "[email protected]" and password "123456"
And I am on the signin page
When I fill in "Email" with "[email protected]"
And I fill in "Password" with "123456"
And I press "Sign In"
Then I should see "Welcome Bob Jones"
Очень приятно. Я не знаю, понадобится ли вам это, но если вы просто используете тест стойки, вы должны также установить любые заголовки. Capybara.current_session.driver.options || = {} Capybara.current_session.driver.options [: заголовки] || = {} Capybara.current_session.driver.options [: заголовки] [...] =. .. –
Этот парень имеет gem-ified этот код. https://github.com/nruth/show_me_the_cookies –