私はちょうどMinitestのRailscastを見ました。MinitestとRspec
RSpecとMinitestを使ってレールアプリをテストする際の賛否両論は何ですか? RSpecからMinitestへの変換を失うのはどの機能ですか?
私はちょうどMinitestのRailscastを見ました。MinitestとRspec
RSpecとMinitestを使ってレールアプリをテストする際の賛否両論は何ですか? RSpecからMinitestへの変換を失うのはどの機能ですか?
私はRSpec開発者の一人であり、minitestを一度も使用していないので、この回答を読む際に偏りを考慮してください。
RSpecのパワーは、非常に多くのテスト概念をファーストクラスのオブジェクトに変換するという事実から来ています。 Test :: UnitとMinitestが簡単なアサーション作成メソッドを使用する場合、RSpecは否定、自己記述などをサポートするファーストクラスのマッチャーオブジェクトを使用します。 RSpecの例は、豊富なメタデータをサポートするファーストクラスのオブジェクトです。 minitest/spec it
ブロックは、同じ種類の豊富なメタデータをサポートしない単純なメソッドにコンパイルされます。 RSpecは、引数を受け入れるファーストクラスのコンストラクト(共有サンプルグループ)を使用して共有ビヘイビアを指定することをサポートしています。 w/minitestではinheritance or a mixin to re-use testsを使用できますが、同じ種類のファーストクラスのサポートはありません。 RSpecには明示的なフォーマッタAPIがあります(それを使用する多くのサードパーティのフォーマッタがあります)。私は、同じ種類のファーストクラスのフォーマッタAPIを持つ最小限のものを認識していません。
いつもテストをして1日中TDDを練習している誰かが、私はRSpecが私に非常に有用な力を与えることを知っています。しかし、多くの人々はそれが過度のものであると感じており、余分な抽象化には追加の認知コストがあります。 ;私はほんの数でそれを使用しました
before(:all)
フック(これはめったに使用しないでくださいRSpecののパワーユーザー機能です注意:ここでは は、私はminitestが欠けていると信じていることをRSpecのが持っているいくつかの特定の機能ですRSpecのを使用しての多くの年での場面)around(:each)
フック利点:
def test_blah
またはit 'blah'
のスタイルで使用できます。全体的に、Sinatra vs. Railsのようなものですが、MinitestとRSpecはどちらも必要に応じて適切な選択肢です。
最後のこと:Minitestの特定の側面がある方が良いのですが、RSpecの方が気に入っている他のものは、簡単に混合してマッチングできます。興味があれば私はwrote a blog post about thisです。
すばらしい説明をありがとう。 –
ボリスは、MiniTestをSpork、Guard、Capybara、およびあらゆる種類のJavascriptドライバと統合したい場合は、1週間を費やしてそれを把握して安定させることを計画することができます。 MiniTestは、Railsアプリケーションの最も基本的なもの以外のものについては、完全なテストスタックを持つことになると、プライムタイムの準備ができていません。私は古い大学に自分自身を試してもらいましたが、それはちょうど欲求不満で終わりました。 – AKWF
Test/Unit
からshoulda
のスペックスタイルのMinitestに変換され、それは報われません。それはボイラープレートを廃止し、スピードも改善すると言います。私はRSpecを使ったことはありません。代わりに、私は独自の原始的なテストとモックのフレームワークを書きました(ちょうど嘲笑を理解する目的のために、私はMinitestへの切り替え時にそれを断念しました)。私は、RSpecのスタブ/モックがもっと進んでいるかもしれないと思うので、既にそれを学んだら、それを使い続けてください。それ以外の場合は、Minitestを使用してください。これにより、私のようなRSpecを知らない人々と共同作業することができます。
http://stackoverflow.com/questions/8423227/migrating-from-rspec-to-minitestspec – matt
おそらく、これら2つの質問をマージする必要があります。マージする方法はありますか? –
+12投票で終了!投票する投票。 –