Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 先日、Redditでこんな記事が載っていました。 AMA: The authors of "Effective Testing with RSpec 3", Myron Marston and Ian Dees :ruby この記事は書籍「Effective Testing with RSpec 3」の筆者であるMyron Marston氏とIan Dees氏が、書籍に関する質問に何でも答えます、という企画です。 この2人のうち、Myron Marston氏はRSpecの開発者(リードメンテナ)です。 Q&Aを読んでいると、

Rails 4.x で動いている社内ツールをRails 5.x に更新する作業を最近やっていて、コントローラ・リクエスト周りのテストの書き換えにrails_kwargs_testing gem が便利だったのでメモ。 ざっくり書くと、これを使うとRails 5.x 用のテストコードに寄せた状態でRails 4.x 上でテストを実行できるようになるので、BUNDLE_GEMFILE でRails 4.x と 5.x 用の Gemfile を指定することで両方を CI で走らせることが容易になる。詳細は作者である r7kamura さんのブログに書かれているので、そちらを参照してもらいたい。 r7kamura.com rspec の場合の tips として、テストファイルごとの describe ブロックで prepend するのではなく、 controller spec や re
# Nested Array Style describe "plus" do where(:a, :b, :answer) do [ [1 , 2 , 3], [5 , 8 , 13], [0 , 0 , 0] ] end with_them doit "should do additions" do expect(a + b).to eq answer end end with_them do # Can browse parameters via `params` method in with_themblock # Can browse all parameters via `all_params` method in with_themblockit "#{params[:a]} + #{params[:b]} == #{params[:answer]}" do expe
この記事は、大江戸Ruby会議06で発表したDocker時代の分散RSpec環境の作り方 // Speaker Deck の補足です。 何人かに質問されたことや、良いことばかりじゃなくて現状存在している課題について補足として、ここで書かせてもらいます。 まず、良く質問されたのがテストケースの分割方法です。 テストケースの分割は、現状とても雑にやってます。 まず、featureスペックのファイルだけをリストアップして適当にシャッフルして詰めます。 その後で、他のテストケースを順番に詰める、という感じです。 多少、無駄ではあるんですが、前のテスト結果のプロファイルの収集と詰めるロジックを書くのをサボっても、現状大分早くできたので、とりあえず作りを簡単にする方を優先しました。 課題の中で最も大きな問題は、ログが見辛いという点です。 ECSはログを準リアルタイムで確認するのが、かなり難しいという

Transpecという、RSpecの古い記法で書かれたspecを、最新の記法に自動で書き換えるツールを作った。 最初のバージョン0.0.1をリリースしたのが2013年8月9日なので、すでに一年前になる。 先日のRSpec 3の正式リリースからもしばらく経って一段落したところだし、 この辺で一旦振り返って、 開発中のその時々で何を考えていたのか、忘れてしまう前に長々と残しておくことにする。 きっかけ そもそもTranspecを作り始めたきっかけは、 should記法を使っていた自分のプロジェクトのspecをexpect記法に書き換えようとしたところから。 これは2013年の7月下旬の話で、まだRSpec 2.99/3.0のベータ版も出ていない頃。 正直なところexpect記法が導入された当初は違和感があったし、 更にはThe Plan for RSpec 3も発表され、 「このままRSpec
あまりにもテスト通らないのでデスメタル聴き始めた— ⁰⁰⁰⁰null (@yuroyoro) 2015, 7月 2 このような事があったので自動化した。Mac限定。 こんな感じ。successだとレベルがアガる。 事前にbash-itunes というコマンドラインツールを入れておく。iTunesを日本語で使ってる場合、patchを当てる必要がある。 こちらを山椒 コードはこれな。 class PlayItunesReporter attr_accessor :success_track, :failure_track def initialize(options = {}) @success_track = options[:success] @failure_track = options[:failure] end def dump_summary(notification) re
Myron MarstonJun 12, 2015RSpec 3.3 hasjust been released! Given our commitment to semantic versioning, this should be a trivial upgrade for anyone already using RSpec 3.0, 3.1 or 3.2, but if we did introduce any regressions, please let us know, and we’ll get a patch release out with a fix ASAP. RSpec continues to be a community-driven project with contributors from all over the world. This releas

RSpecがたまに落ちたり通ったりする。そんなときはRSpecのテスト実行順序によりテストがFailしている可能性が高い。つまりあるテストがあるテストの実行後じゃないと通らない、みたいな状況に陥っている可能性があり、これは順番に依存したテストなのでよろしくない状態である。 バージョン情報rails (4.1.5)rspec (3.1.0)Random order RSpecRSpecを順番に依存させないためにspec_helper.rbでこんな設定がされている。 # Run specs in random order to surface order dependencies. If you find an # order dependency and want to debugit, you can fix the order by providing # the seed, whic
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く