Что такое концептуальное различие между Rspec в художественной спецификации и запрос спецификации ?
Из документации по характеристикам:
Спецификации функций - это тесты высокого уровня, предназначенные для проверки функциональных возможностей приложения. Они должны управлять приложением только через его внешний интерфейс, обычно веб-страницы.
И для спецификации запроса:
Спецификации запросов предоставляют тонкую оболочку для интеграционных тестов Rails и предназначены для управления поведением всего стека, включая маршрутизацию (предоставляемую Rails) и без заглушек (это зависит от вас). Со спецификациями запроса вы можете:
- указать единый запрос
- указать несколько запросов через несколько контроллеров
- указать несколько запросов в нескольких сеансах
Я знаю, что спецификации функций используют Capybara, а спецификации запросов - нет. Но вряд ли это заслуживает других концепций.
"GET /login"
блок с ожиданиями вit
блоках , таких какexpect(response.status).to eq(200)
иexpect(response).to render_template(:new)
, или вdescribe "POST /sessions"
, вcontext "with valid credentials"
блоке, сexpect(response).to redirect_to(user)
иfollow_redirect!; expect(response.body).to include("Signed in")
visit users_path
) или жестко запрограммированные строки (visit '/users'
)? Лично я предпочитаю не использовать какие-либо внутренние компоненты приложения в таких спецификациях.