最近、テストのサブクラスが Test::Unit::TestCase の場合、テストの実行後にテスト データベースがクリーンアップされていないことに気付きました。私のテストが ActiveSupport::TestCase のサブクラスである場合、すべてが適切にクリーンアップされます。
誰かが理由を説明したり、どちらを使用するかを説明したりできますか?
私はshouldaとfactory_girlを使用しています。
ありがとう。
最近、テストのサブクラスが Test::Unit::TestCase の場合、テストの実行後にテスト データベースがクリーンアップされていないことに気付きました。私のテストが ActiveSupport::TestCase のサブクラスである場合、すべてが適切にクリーンアップされます。
誰かが理由を説明したり、どちらを使用するかを説明したりできますか?
私はshouldaとfactory_girlを使用しています。
ありがとう。
コードを見ると、 RailsActiveSupport::TestCase
をテストするためのセットアップ関数とユーティリティ関数がたくさんあることがわかります。古いバージョンの Rails は多くの mixin で使用されてTest::Unit::TestCase
いましたが、しばらく前にサブクラス化に移行しました。
Rails アプリをテストする場合は、コントローラーのActiveSupport::TestCase
orをサブクラス化する必要があります。ActionController:TestCase
ジェネレーターはこれを自動的に行うため、ほとんどの場合、これについて考える必要はありません。