Я пишу функциональный тест с использованием Capybara и RSpec, где приложение является удаленным (т.е. не запускается Capybara). Тест и приложение находятся в одной базе данных. Поэтому я предположил, что любое изменение, внесенное тестом в базу данных, будет доступно и для удаленного приложения.
Но когда я использую Selenium для заполнения форм данными из записей, созданных на моих этапах тестирования, я получаю сообщение об ошибке «Нет такой записи».
Моя конфигурация RSpec включает эту строку:
RSpec.configure do |c|
c.use_transactional_fixtures = false
end
Я предположил, что это позволит получить данные для Selenium. Но это не то, что происходит.
Моя конфигурация капибары:
Capybara.javascript_driver = :headless_chrome
Capybara.app_host = 'http://selenium:5000'
Capybara.run_server = false
И тест, и тестируемое приложение используют одну и ту же базу данных в DATABASE_URL=postgres://postgres@db:5432/test_db
.
Кто-нибудь может мне помочь?