rails创建项目,部署,测试流程(rails5.0+ruby2.3.1)

rails new test_app --skip-test-unit 不生成默认的test,稍后用rspec
cd test_app

修改Gemfile(大部分为自动生成)

source 'https://ruby.taobao.org' -- 使用淘宝镜像,因为连接不了rubygem

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.0.0', '>= 5.0.0.1' --rails版本
# Use Puma as the app server
gem 'puma', '~> 3.0'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
gem "slim-rails" --能够让erb转slim
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 3.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug', platform: :mri
  gem 'rspec-rails', '3.5.1' -- 此处添加最新rspec
  # Use sqlite3 as the database for Active Record
 gem 'sqlite3'
end

group :test do -- 添加capybara及其依赖gem,能够编写类英语交互语句
    gem 'selenium-webdriver', '~> 2.53', '>= 2.53.4'
    gem 'capybara', '2.8.0'
end

group :production do
    gem 'pg', '~> 0.18.4'
end

group :development do --heroku部署用
  # Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
  gem 'web-console'
  gem 'listen', '~> 3.0.5'
  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'
  gem 'spring-watcher-listen', '~> 2.0.0'
end

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

bundle install

bundle install --without production
bundle update
bundle install

生成rspec测试模块

rails generate rspec:install

push至git上

git init
git add .
git commit -m "Initial commit"
git remote add origin url
git push -u origin master

设置rails,让其服务于静态资源文件

config/environments/production.rb 

TestApp::Application.configure do
  .
  .
  .
  config.serve_static_assets = true
  .
  .
  .
end

 spec测试文件:

require 'rails_helper'

RSpec.describe "StaticPages", :type => :feature do
  describe "Home page" do
    it "should have the content 'Help'" do
      visit '/static_pages/home'
      expect(page).to have_content('Sample App')
    end
  end

  describe "Help page" do
    it "should have the content 'Help'" do
      visit '/static_pages/help'
      expect(page).to have_content('Help')
    end
 end
end

 测试语句

bundle exec rspec spec/requests/static_pages_spec.rb

 启动rails

rails s

 

 

转载于:https://www.cnblogs.com/guochunyi/p/5809029.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值