看完RailsConf video on ActionDispatch::systemTestCase之後,我很興奮將它整合到我的當前應用程序中。目前,我們的測試套件安裝使用以下:Rails 5.1使用RSpec配置內置系統測試
- rspec
- factory_girl
- capybara
# for feature specs
- database_cleaner
# for feature specs, mostly for testing js
- selenium-webdriver
# for feature specs
- capybara-webkit
# for feature specs
我們目前的配置很難得到配置,但我們最終得到了它的工作,主要歸功於Avdi Grimm的一篇文章,標題爲:Configuring database_cleaner with Rails, RSpec, Capybara, and Selenium。
我的希望是使用rails 5.1
中發佈的rails的內置系統測試。由於導軌現已係統測試內置的:所有我需要擔心的配置如下:
rspec
factory_girl
這是因爲ActionDispatch::systemTestCase
需要照顧capybara
,database_cleaner
,並且已經爲selenium
驅動程序進行了配置。
例如:目前我feature specs
寫像這樣(水豚RSpec的上下文中):
#spec/features/blogs/creating_blogs_spec.rb
require "rails_helper"
RSpec.feature "Logged in User can create a blog" do
before do
create(:logged_in_user)
end
scenario "successfully", js: true do
...
end
end
所以這是一個典型的集成/功能/系統規範可能是什麼樣子的配置測試套件與rspec
,database_cleaner
,factory_girl
和capybara
。我想將其轉換爲使用ActionDispatch::systemTestCase
。
但是,我想在RSpec
的範圍內使用ActionDispatch::systemTestCase
。
上面的RailsConf上的視頻顯示ActionDispatch :: systemTestCase如何運作的軌道的默認測試套件佈局(例如:minitest與位於test
目錄測試)的範圍內,但它並沒有討論如何使用ActionDispatch :: systemTestCase在RSpec的範圍內。
我找不到任何資源可以使用RSpec對軌道的內置系統測試進行配置,包括在system testing section of the rails guides之內。這可能嗎?