Rails4 (4) Rspec + Capybara で、エラーが発生する場合の修正方法 [アプリ開発]
Ruby on Rails チュートリアル第3章でRspec + Capybara を使ってテストする
部分がありますが、次のエラーが発生する場合があります。
$ bundle exec rspec spec/requests/static_pages_spec.rb
1) StaticPages Home page should have the content 'Sample App'
Failure/Error: visit '/static_pages/home'
NoMethodError:undefined method `visit' for
#<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0x0000001029e770>
# ./spec/requests/static_pages_spec.rb:8:in `block (3 levels) in <top (required)>'
こちらは、spec_helper.rb の RSpec.configure ブロック中に以下の記述を追加すれば
回避できました。
config.include Capybara::DSL
速読法(3)~ SQ3Rとマインドマップ [スキル]
- 白紙の中央にテーマを記述する
- 関連する小見出しなどを枝でつなぐ
- 階層的に個々の事実やアイデアなどを追加していく
- 色分けして視覚化する
リファクタリング・ウェットウェア ―達人プログラマーの思考法と学習法
- 作者: Andy Hunt
- 出版社/メーカー: オライリージャパン
- 発売日: 2009/04/27
- メディア: 単行本(ソフトカバー)
ロジカルシンキング(1) [スキル]
Why(なぜ?)What(何を?)When(いつ?)Where(どこで?)Who(誰が?)How(どうやって)
Company(会社)Competitor(競合)Customer(顧客)
→競争環境を分析→事業の成功要因(KSF)
Product(製品)Price(価格)Place(流通)Promotion(プロモーション)
Strength(強み)Weakness(弱み)
Opportunity(市場の機会)Thread(脅威)
Plan(計画) → Do(実行) → Check(チェック) → Action(アクション)
Strategy (戦略)Structure (組織構造)System (システム)SharedValue (共通の価値観)Style (組織風土)Skill (スキル)Staff (人材)
【参考資料】
マインドマップ問題解決―「らくがき」で劇的に身につくロジカルシンキング
- 作者: 高橋 政史
- 出版社/メーカー: ダイヤモンド社
- 発売日: 2009/02/27
- メディア: 単行本
JSP/Servlet (2) Webアプリケーションのデプロイ [アプリ開発]
JSP/Servlet (1) 開発環境の準備 [アプリ開発]
デフォルトで入っているのより最新版のを使ってみよう!
Rails4 (3) [アプリ開発]
前回はWindows上でセットアップしたが、なかなかやっかいなのでCentOS5.9上で実行。
最新OSでやらなかったのを後で悔いることに。。。
OSのインストールまでは割愛(VMWare上にセットアップ)。
CentOS 5.9 に Rails 環境を設定する
○ruby2.0をインストールする
$ tar -jxvf ruby-2.0-p247.tar.bz2
$ cd ruby-2.0.0-p247
$ ./configure --enable-pthread --enable-shared --prefix=/usr/local/ruby2
$ make -j2
$ make check
$ su
# make install
○rails4 をインストールする
# gem install rails
○テストプロジェクト
$ cd work
$ rails new test_app -B
$ cd test_app
$ rails server
エラー発生
Rails 3.1 から execjs を使っている、らしく。
rpm を思い出すかのような依存関係の罠。
ここでGemfileをいじらなかったのを悔いることに。。。
○ExecJS と RubyRacer(V8)をインストール
$ gem install execjs
$ gem install libv8 -- --with-system-v8
$ gem install therubyracer
○環境変数 EXECJS_RUNTIME を設定
$ export EXECJS_RUNTIME=RubyRacer
$ rails server
/usr/local/ruby2/lib/ruby/gems/2.0.0/gems/execjs-1.4.0/lib/execjs/runtimes.rb:65:in `from_environment': therubyracer (V8) runtime is not available on this system (ExecJS::RuntimeUnavailable)
!!
○execjs をGemfileに追加
$ vi Gemfile
---
gem 'execjs'
gem 'therubyracer'
gem 'uglifier'
---
$ rails server
=> Booting WEBrick
=> Rails 4.0.0 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2013-07-19 22:01:59] INFO WEBrick 1.3.1
[2013-07-19 22:01:59] INFO ruby 2.0.0 (2013-06-27) [x86_64-linux]
[2013-07-19 22:01:59] INFO WEBrick::HTTPServer#start: pid=15755 port=3000
○ブラウザで確認
http://localhost:3000 を表示させる
Started GET "/" for 127.0.0.1 at 2013-07-19 22:04:08 +0900
Processing by Rails::WelcomeController#index as HTML
Rendered /usr/local/ruby2/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/templates/rails/welcome/index.html.erb (3.3ms)
Completed 200 OK in 57ms (Views: 26.9ms | ActiveRecord: 0.0ms)
成功!!
※反省点
- bundleをつかいましょう。
- よくドキュメントをよみましょう。
速読法(2) [スキル]
速読法(1) [スキル]
Rails4 (2) [アプリ開発]
環境はできたと思いますので、実行してみます。
c:> mkdir c:\dev
c:> rails new c:/dev/test_app
c:> cd dev/test_app
c:> rails server
Rails4 [アプリ開発]
Rails 4 がリリースされます。今回からRuby2.0に対応されたのでWindows環境へのセットアップを一気にGo!
- Ruby Installer を使用してインストール!
- スタート→すべてのプログラム→Ruby-2.0.0-pxxx-x64→Rubyコマンドプロンプトを開く
- rails をインストールする
$ gem install rails