rails项目没有使用默许的单元测试包,而是使用了rspec-rails来测试.
依照文档说明首先生成对应的测试文件:
rails generate integration_test xxx
invoke rspec
create spec/requests/xxx.rb
然后在spec/spec_helper.rb中添加以下1句:
RSpec.configure do |config|
.
.
.
config.include Capybara::DSL
end
最后使用以下测试命令:
bundle exec rspec spec/requests/static_pages_spec.rb
但是不幸的是,在我的系统中出现了毛病:
.rvm/gems/ruby-2.2.5/gems/selenium-webdriver-2.0.0/lib/selenium/webdriver/common/zipper.rb:1:in `require': cannot load such file -- zip/zip (LoadError)
这是由于selenium-webdriver的版本太低致使,在Gemfile中加入1行:
gem 'selenium-webdriver','~>2.35.1'
再次运行测试命令,很不幸还是报错:
.rvm/gems/ruby-2.2.5/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:228:in `require': cannot load such file -- test/unit/assertions (LoadError)
这是由于缺少test-unit致使,遂在Gemfile中加入:
gem 'test-unit'
很奇怪,虽然我没有用到test-unit但是还是要加载它!
最后测试1切正常.