You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
この記事はRuby Advent Calendar 2013の6日目の記事です。 昨日はShindo200さんのRuby で paiza.jp のオンラインハッカソン問題に挑戦するときに少し役に立ちそうなことでした。 概要 Rubyのデファクトスタンダードなテストフレームワークと言えるRSpecですが、現在バージョン3.0のリリースへ向けて開発が進められており、先日2013年11月8日には3.0.0.beta1がリリースされました。 この記事ではRSpec 3における変更点と、RSpec 3へのアップグレード手順、また既存のspecを最新の記法に変換するツールを紹介します。 追記 RSpec 3は2014年6月2日に正式リリースされました。この記事は2013年12月6日に書かれたものですが、正式版においても通用する内容になっています。 正式版における主要な変更点は、以下のページが参考になる
Rspec/Capybara/Turnipの入門記事を全力でまとめてみた Aug 30th, 2013 Tweet さっき、『 The Rspec Book』を読み終えました。厚めの本ですが、RspecやCucumber、Webrat、Seleniumなどを活用するためのノウハウ満載で大満足でした! ということで、この本で読んだ内容を忘れないようにするためと、その過程でRspec/Capybaraなどのネット資料をあつめたので、まとめるためにこの記事を書きます。もし、間違いを発見した場合や他にもいいリソースがあれば、是非メッセージを願いします! テスト駆動開発(TDD)と振る舞い駆動開発(BDD) テスト駆動開発(TDD)とは、コードを書く際に最初にテストを書き、次にテストが通る最低限のコードを書き、その後にリファクタリングしていく開発手法です。一方で振る舞い駆動開発(BDD)はTDDの発
TDD, BDD にはテストを実行する速度がすごい重要なのはみんな知っていると思うけど、 it { … } 記法が速度にどう影響するか知ってる? という話。 場合によっては、 subject + it, its で何行も並べるより、まとめられるなら 1 つの example にまとめたほうが速いです。 # May be slow describe 'foo' do subject { get :foo } before do # Prepare the model (e.g. FactoryGirl) end it { should be_ok } its(:body) { should match(/foo/) } # ... after do # Clear the DB (e.g. DatabaseCleaner) end end 前提 before や let! でたくさんモデルを
Myron Marston » The Plan for RSpec 3の微妙訳です。(翻訳最中なう)だいたい翻訳しました。訳がうんこなのは勘弁(ご指摘いただけると助かります)。 2013/7/23 21:25 id:kakutani さんのツッコミをもとに、誤訳等を修正しました。ありがとうございます(〃・ิ‿・ิ)ゞ RSpec 3に向けての計画 RSpec 2.0は2010年10月にリリースされました。 リリースされてから今までの3年間、後方互換性を保ったままRSpecを継続的に改善してきました。 しかし、RSpecの2.xより古いリリースとの後方互換性を保つために残しているひどいコードの蓄積は限界点に達しています。 RSpec 2.14はRSpec 2の最後のリリースになるでしょう(今後も多分bugfixのリリースすることはあるでしょう)。 我々はRSpec 3に取り掛かっています、
Myron MarstonJul 15, 2013Update: There’s a Japanese translation of this available now. RSpec 2.0 was released in October 2010. In the nearly three years since then, we’ve been able to continually improve RSpec without needing to make breaking changes, but we’ve reached a point where RSpec has a fair bit of cruft stemming from the need to retain backwards compatibility with older 2.x releases. RSpe
2013-06-02 テストを parallel_tests の2倍以上高速にする Qspec ruby rails qspec テストが遅いので parallel_tests で高速化しようとしたが、効率わるすぎて腹がたってきたのでより効率的な Qspec をつくった。 いくつかの rails プロジェクトでベンチマークしたところ、2倍以上の高速化効果が得られた。 高速化に貢献しているのは次の要素。 テストファイルのふりわけを Redis 上の Queue をつかって動的におこなう。 Spork ですべてのテスト実行プロセスを事前に起動する GC を切る(ファイルごとに有効にして明示的にGCするので、十分なメモリがあればたいてい問題なく動作する。capybara 系をつかうとあぶない) ダウンロード & インストール: tomykaira/qspec · GitHub くわしくは #ru
先日、第5回若手Webエンジニア交流会でLTしてきました。 ビール飲んでピザつまみながらLTきいたりLTしたりするのカジュアルでいいですね。 というわけで、スライド公開します。 Testing Frameworkについてで、 「なんとなく、とりあえず、RSpec」みたいなのはダサいよねというお話 スライド http://yayugu.github.io/rktn_presen/wakate_web_engineers_koryukai_5th.html スライドの原稿 テストとかの話 矢口裕也 (@yayugu) 「みんなー テスト書いてる?」 みたいなの飽きたよね 今日は TDDとBDDとAgileとかの開発スタイル と テスト哲学の話を しません Testing Framework の話をします Testing Framework 大きく分けて2つ xUnit xSpec xUnit
技術部の福森です。 クックパッドでは RSpec と Jenkins を利用して CI による自動テストを行なっています。 テストの数は 12000 examples を越えていて、テストによっては稀に失敗する物が出てきています: 時間帯依存で失敗してしまうもの 他に同時に実行されるテストに依存しているもの (並列実行で組合せが変わり再現する) インテグレーションテストでの ajax リクエストの微妙なタイムアウト etc また、本番環境を壊さないよう、 CI で成功したリビジョンのみデプロイ可能となっており、開発者が push しデプロイしたいと思っている時に無関係な原因で失敗する事を避けたいという欲求があります。 なぜなら、再度ビルドを実行する時間 (およそ 10 分) の間待たされる事になるからです。 そこで、そのようなテスト起因での失敗を減らし、かつ開発者にそれらを修正してもらうた
昨日、これからやりたいことを書いたのですが (http://d.hatena.ne.jp/kouji0625/20130605/p1) 、それをある程度実現しているスクリプトがあるとのことなので調べてみました。 A Test Code Generator for RSpec Users: https://speakerdeck.com/seratch/a-test-code-generator-for-rspec-users 既存のクラスから、メソッド定義を抽出して、それを呼び出すspecを自動生成するというものです。 詳しくは上記のスライドか、GitHub から: https://github.com/seratch/rspec-kickstarter これはすばらしい。特に、Rubyスクリプトの解析をするためにRDocを使っていることがすばらしい。目の付けどころが、シ(ry rspec
Style A guide for programming in style. Use Hound to automatically review your GitHub pull requests for style guide violations. In addition to the general guidelines below, we also have the following more detailed, language/framework-specific style guides: Android Backbone CoffeeScript Ember.js ERb Git Haskell HTML JavaScript Objective-C Python Rails Ruby Sass Shell Swift Testing Formatting Avoid
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く