Просто посетите контроллер, которому вы хотите опубликовать некоторые параметры, чтобы создать объект.
Вам не нужна форма для этого. Просто отправьте значения на любой контроллер, который обрабатывает эти сообщения, и продолжайте тестирование. Все, что заботит контроллер - это получение параметров для работы, однако они публикуются.
visit "/user", :post, :firstName => "Foo", :lastName => "Bar"
Как указано в вебрат документации :
visit (url = nil, http_method = :get, data = {})
ОБНОВЛЕНИЕ: Если я не ошибаюсь, у Capybara есть более или менее замененный Webrat, и, как правило, существует мнение, что тесты на уровне огурца должны использовать реальный пользовательский интерфейс, а не API, с которым взаимодействует интерфейс. Тем не менее, это все еще возможно , и я все еще нахожу это полезным сам, когда в начале проекта я просто хочу протестировать свои контроллеры и выяснить пользовательский интерфейс позже.
То есть в Capybara, в зависимости от вашего водителя, но при условии rack / test :
page.driver.post('/user', { firstName: "Foo", lastName: "Bar" })