既存の Cucumber および Ruby スイートを使用して概念実証テストを作成しています。私がこれを行っている企業には、とりわけ Java と DB2 を含むスタックがあります。
現在、データベースを使用するテストはテスト データベースを劣化させます。多くの理由から、データベースを消去してイメージ化されたバージョンに置き換えることはできません。
トランザクション戦略を使用してデータベースをクリーンアップするというアイデアに興味があり、database_cleaner gem を検討しています。
database_cleaner を操作するには ORM が必要なようです。この時点ではスキーマにアクセスできず、ActiveRecord は私の資格情報で必要なものにアクセスできません。
2 つの質問:
- ORM は常にスキーマにアクセスする必要がありますか?
- トランザクション戦略を使用してデータベースをクリーンアップするには、常に ORM が必要ですか?
また、Ruby 1.8.7 (jRuby はまだありません)、Windows、DB2 などで動作する gem を誰かが知っている場合のボーナスです。