ASP.Net MVC を使用した後、Rails について考えるようになりました。以前は Rails を使用していましたが、少しさびています。ASP.Net MVC チュートリアルでは、リポジトリ パターンを使用してデータ レイヤーの実装を非表示にすることを推奨しています。これにより、単体テストの依存性注入がより簡単になり、モデル実装からコントローラーを適切に切り離すことができます。
Active Record オブジェクトを直接使用する Rails のコントローラーと、簡単にセットアップおよび破棄できるテスト データベースを使用した単体テストを覚えています。これにより、ユニット テストのためにスワップ アウトする必要がなくなりますが、それでも、あまりにも多くの ActiveRecord コードをコントローラーで公開するのは良くない考えのように思えます。
私の質問は、ここでの最新のベストプラクティスは何ですか? 実際の (モックではない) データベースはまだ単体テストに使用されていますか? Rails 開発者は ActiveRecord を直接呼び出しますか、それとも抽象化しますか?