RSpecを使って私のRailsアプリケーションのテストを書いてみたいが、Test :: Unitを使って書かれたテストはたくさんある。私はRSpecをRake、Rails、既存のテストとどのように統合すればよいですか?
rake test:units
か何かのようなもので、単にコマンドラインから(ユニットテスト、機能テストなどのまたは全ての)全てのテストを実行することができるという続けていきたいし、それを持っていると思いますTest :: UnitまたはRSpecで記述されているかどうかにかかわらず、すべての単体テストを実行します。そして、私は間違いなく、既存のテストをRSpecに変換する時間を無駄にしたくありません。それは非スターターです。
今私は、自分の既存のテスト、テスト/ユニット、テスト/機能などの中に私のRSpecテストが存在してほしいと思っています。これを達成する最良の方法は何ですか?それとも、これはまったくいいアイデアですか?つまり、私はRSpec(とRubyとRailsについては全く新しい)ですから、RSpecを別々に保つ方が良いかもしれません。しかし、ファイルシステムにどこに格納されているかに関わらず、1回のレーキタスクですべてのテストを実行できる必要があります。rcovを使用して、テストコーパス全体のコードカバレッジ数を収集する必要があります。私はすでに私の既存のテストでやっています。
RSpecを使用して単体テストや機能テストを作成しないでください。基本的にあなたの答えは、rspecテストは別々のタイプのテストであると私に伝えています。また、この組織体系では、単一のユニットだけをテストするrspecテストと、より大きな機能テストや統合テストとして機能するテストとを分離する方法はないようです。私は私のテストでこのレベルの分離を維持できるようにしたいと思います。私が取り組んでいるような大規模なプロジェクトでは、単一のカテゴリのテストを受け入れることはできません。 – Jeff
正常終了した場合、コントローラまたはモデルのみをテストするRspecテストはユニットテストです。彼らはあなたがテストしたいものをテストすることができます。 rspec_railsをインストールすると、モデル、ビュー、コントローラ、ヘルパーをユニットとしてテストすることを前提としています。ただし、機能テストとして機能するテストをさらに作成することもできます。 Rspecが作成するディレクトリに限定されません。あなたは簡単に "機能"ディレクトリを作成し、そこにすべての機能テストを置くことができます。 – jergason