Rails 3のgemの管理に使用されるbundlerの使い方を復習します。 Bundlerの現時点の最新安定版のversion 1.2.3を対象とします。Bundlerを使うと何が嬉しいのか? あるgemが開発環境にはインストールされているが、production環境にはインストールされていない、といった問題が無くなる。 プロジェクトに必要なgemをはっきりさせることができる。 Bundlerのインストール %~ gem install bundler システム標準のrubyを使用している場合はsudoが必要な場合があります。rbenvやrvmを使用している場合はgem install bundlerのみでインストールできます。 bundle checkでインストール必要なgemをチェック Gemfileの中に記載されているgemのうち、これからどれをインストールしなければならないか
ここではRubyで記述されたコードに対するテスト方法の概要について説明します。Rubyには、ユニットテストをしやすくするフレームワーク(ライブラリ)が提供されています。通常は、個々のモジュールやメソッドなど小さな単位で十分なユニットテストを行って検証し、結合テストへと進みます。 提供されるフレームワークは、「テスト駆動開発(Test Driven Development:TDD)」や「振舞駆動開発(Behaviour Driven Development:BDD)」という思想がベースになっています。テスト駆動開発とは、プログラム開発手法の一つで、プログラムに必要な各機能について、最初にテストコードを書きそれが失敗することを確認し(テストファースト)、そのテストが成功するように必要最低限の実装を行った後、プログラムの振る舞いを変えないようにコードを洗練(リファクタリング)していく方法です。こ
How would be the correct way to mock or override the Kernel.system method so that when called with: system("some command") instead of executing the command, it executes some predefined code? I tried adding the following to my Test class: module Kernel def system puts "SYSTEM CALL!!" end end But it did not work as expected, instead, the system call was run when executing a test.
2014.05.28 [翻訳+α] Rails/RSpec/Capybara/Seleniumでdatabase_cleaner gemを使う こんにちは、hachi8833です。 Rails 4.1.1環境でなぜかPoltergeistでスクリーンショットを保存できない問題が解決したら記事にしようと思っていたのですが、間に合わなかったので今回はConfiguring database_cleaner with Rails, RSpec, Capybara and Seleniumという記事を翻訳してみました。 なお、この記事の内容は、弊社で行った「Crafting Rails 4 Applications読み会:第8回資料」と密接に関連します(スライド47 - 53ページあたり)。 解説 RSpecの1つ1つのテスト(beforeとafterも含めて1つの単位とします)は本来互いに独立す
Capybara.javascript_driver = :poltergeist Capybara.register_driver :poltergeist do |app| Capybara::Poltergeist::Driver.new(app, :js_errors => false, :timeout => 60) end とすればよいとわかった。各オプションについて以下に説明する。 :js_errors :js_errors => falseにしたのはCapybara::Poltergeist::JavascriptError: というエラーを防ぐため。JSのエラーはよくあることなのだが、エラーが出るたびにCapybaraを止めるのは時間の無駄。ということで、JSのエラーは無視することにした。 :timeout Timeoutはデフォルトでは30秒。しかし、ログインのような時
こんにちは。ヨッピーです。 突然ですが、みなさんは「テキストサイト」をご存じでしょうか。 Yahoo!検索で、「テキストサイト」を検索! 昨今はTwitterやFacebookなどのSNS流行の影響か、ブログすら書かない人が増えてきました。そのブログも存在しなかったかつてのインターネットでは、画像でも動画でもなく、「テキスト」をメインコンテンツに据えたサイト群が一世を風靡(ふうび)しており、それらを総称して「テキストサイト」と呼んでいたのです。 そのへんの歴史みたいな部分については、手前味噌(みそ)ですが僕が以前に書いた下記の記事が参考になるかもしれません。 あれだけ流行ったテキストサイトが何故廃れたのか考えてみる(外部サイト) ちなみにこちらの記事は、URL変更のためSNSの数値がリセットされていますが、はてなブックマークが1200件もつくなど大変話題になりました。 そんな、「古き良き時
JavaScript has evolved far beyond its role in the DHTML websites of the 90s. It is fast becoming the leading contender for a common language for the Internet of Things (IoT). While it’s far too early to say if JavaScript will truly take that crown, I believe JavaScript does have a role to play in this ever expanding IoT space. Last year, I wrote an overview of the technology that JavaScript develo
2013年08月05日14:53 Ruby JavaScript Rails4 + Capybara + PhantomJS (poltergeist) なテスト環境 Rails4 でのエンドツーエンドなテスト環境を作ってみたのでメモです。 統合テストといえば Capybara さんなわけですが、デフォルトだと JavaScript を実行する際にドライバとして Selenium が使われてしまいます。 Selenium さん良い人なんですが、、、ブラウザが起動するので重いし、そもそも毎回ブラウザが起動する必要は無いのでヘッドレス(ブラウザの起動無しに JavaScript が実行できる)ドライバにしちゃいましょう。サヨナラ。 ヘッドレスドライバはいろいろあるんですが、最近は PhantomJS というライブラリが良いみたいなのでこれを使ってみます。Capybara から PhantomJ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く