1

テストを実行するときに、テスト データベースを作成するときに、すべてのデータを含む既存のデータベースをコピーしたいと考えています。

私の同僚の一人がPOSTGIS_TEMPLATE = DATABASES['default']['NAME']彼のテストに使用するまで、私はこれについて考えたことはありませんでした. GeoDjangoプロジェクトで使用するため、使用POSTGIS_TEMPLATEする postgis データベース テンプレートをテスト ランナーに知らせるために存在します。そして、彼が上記のように定義すると、実際にはすべてのデータを含むテスト データベースも作成されます。私たちにとってはちょっと便利なので、フィクスチャ ファイルを作成する必要はありません。しかし、使用しないプロジェクトで同じことができない場合GeoDjango

ここで 2 つの質問があります。プロジェクト データベースに既に存在するデータを使用するのは良い考えですか? GeoDjango(一部のテストでは、最初に特定のテーブルのすべてのデータを削除する必要がある場合がありますが、多くの場合、空でないデータ セットに対してテストします。)とにかく、既存のデータベースからデータをコピーするように設定できますか?

4

1 に答える 1

0

プロジェクト データベース内の既存のデータを使用することは良い考えですか?

いいえ、変更される可能性があり、テストで奇妙な非決定論的動作につながります。

最も安全なオプションは、既存のデータを でダンプしてから./manage.py dumpdata、個々のテストでフィクスチャとしてロードすることです。このドキュメントでは、その方法について説明します。

于 2013-10-04T22:05:11.767 に答える