2012-11-06 12 views
6

Rspecのnoobなので、私はこの質問が意味をなさないことを知っています。私は本当に混乱していて、この解決策を得ることができませんでした。既存のアプリケーションのテストケース(Rspec)の作成

新しい要件が1つあります。既存のプロジェクトのRspecテストケースを作成するよう依頼しました。彼らはすでに働いてrails3を使用してアプリケーションを持っているが、彼らはRSpecの例を書くことにしたい今

私の質問は

既存のアプリケーションのためにRSpecのケースを書くことは理にかなっていますか?

は、我々はすでに働いプロジェクト

のための仕様を記述することができ、我々はすでに書かれたアプリ

のための仕様を作成するために、任意のガイドラインに従わなければならないことは、絶対に、既存のテストケースを追加することは理にかなって、あなたに

答えて

8

dpassageが正しく指摘されているように、あなたの質問はrspecとは関係ありません。これは、レガシーコードの単体テストについてです。

既存アプリケーションのRspecケースの記述は意味がありますか? 既に作業中のプロジェクトの仕様を書くことができます

はい。アプリケーションを書く前にまずテストを書くときに最適です。テストを書くのは遅すぎることはありません。遅くても傷つくことはありません。 テストレガシーコード:Adding unit tests to legacy code

たちは

私の2セント、この上で既に書かアプリのための仕様を作成するために、任意のガイドラインに従ってください:インクリメンタル

  • 追加テスト

  • 最初にテストしますあなたのアプリケーションの一部です。ユニットテストを最初に書き始め、重要なモデル(すべてのモデルではなく)に焦点を当てます。モデルをテストしたら、機能テスト(コントローラ)と統合テストに移動します。 覚えておいてください:象を食べるためには、一度に1枚ずつ食べる必要があります。

  • 既存のモデルでテストを書くのが難しい場合は、コードをリファクタリングする必要があることを意味します。あなたのモデルをテストするのを簡単にするためにリファクタリングしてください。

  • 新しいモデル/実装のための単体テストを常にNOWから記述してください。

便利な参照:

7

ありがとうございましたコード;将来の拡張機能やバグ修正が行われるようにアプリケーションを動作させ続けるのに役立ちます。

rspecには特に何もありません。テストフレームワークなので、コードをさまざまな方法でテストできます。

レガシーコード用のテストを書くにはかなりの量の文献があります。 The Rspec Bookなどの優れたドキュメントと組み合わせることで、始めてみることができます。

+0

完璧な答えです。 –

+0

お返事ありがとうございました – devudilip

0

私はこの宝石https://rubygems.org/gems/autogen_rspecを書きました。

この宝石は完成していますが、研磨が必要です。

どのように動作しますか? このgemをインストールしてサーバーを実行すると、gemはすべての要求、応答、およびアサートrspecスタイルのログを開始します。したがって、これをQA envにインストールして、QAチームが回帰テストを行う場合、すべてのURLがレスポンスとともにファイルに記録されます。

テストファイルに格納されているテストを選択する必要があります。

関連する問題