0

現在使用しているアプリで状況が発生しており、今後の進め方がわかりません。

特定のモデル (レポート) をテストするには、初期設定データ (調査) とユーザー データ (調査に対するユーザーの回答、場合によっては複数のユーザー) の両方の製品レベルのデータが必要です。初期データは、実稼働環境でスクリプトを使用して作成され、データをアプリケーションにロードします。私たちの機能テストでは、これとまったく同じことを行う必要があります (またはそれにかなり近い複製を用意する必要があります)。次に、いくつかのユーザー データを偽造します (レポートの計算と構造をテストするために、既知の回答を使用します)。

私が苦労しているのは、初期データをどのように管理するかです。開発が進むにつれて、このデータは変更される可能性があり、複数の場所でこれを管理したくありません (初期ロード用のスクリプト、本番環境の変更のための移行、テストにロードされたデータが現在ライブのものを反映していることを確認するためのファクトリ/フィクスチャなど)。 )。これに関するベスト プラクティス リソースはありますか? スクリプトからの初期ロードにフィクスチャを使用し、その後テストで使用できるようにする必要がありますか? テストから初期データを作成するスクリプトをロードするだけですか? データ移行が悪いと読んだことがありますが、それを回避しようとしていますが、作成したスクリプトがリリースを行う開発者 (capistrano) によって実行されない可能性があるマルチ開発者環境では、どのように処理すればよいでしょうか。

考え?質問、コメント、懸念?

どんな助けでも大歓迎です!

4

1 に答える 1

0

移行は少し面倒ですが、スキーマ ベースのデータベースには必要です。

これらのフィールドに対してクエリを実行していない場合は、さまざまなデータを含む JSON として列を保存できます。

さらに先に進みたい場合は、MongoDB などのスキーマのないデータベースです。私は MongoDB を Mongoid gem と一緒に使用しています。これは activerecord と同じように機能します。

于 2013-11-08T01:00:54.997 に答える