0

私のチームと私は、データアクセスにDoctrine2を含むSymfonyフレームワークを使用するために移植している大規模なWebアプリケーションを持っています。始めたばかりなので、後でエンティティ関係の回帰テストについて疑問に思っています。

データベーススキーマから自動的に生成された多数のDoctrineエンティティがあり、現在、特に関係マッピングの領域でそれぞれをチェックして整理しているところです。マッピングが完了し(ドキュメントブロックアノテーションを使用)、エンティティが正しいデータアクセスを実行していることを簡単なスクリプトで確認したら、マッピングを確実にし、エンティティの機能が将来壊れないようにするための最良の方法は何ですか。

すべてのエンティティの単体テストをスタンドアロンユニットとして作成し、必要な依存関係をモックしますが、これは、編集中のアノテーションコメントや、現在のエンティティの関係を変更および破壊するスキーマから必ずしも保護するものではありません。

何かご意見は?ここの誰かが同じ問題を抱えていましたか?

4

1 に答える 1

1

子エンティティとそのエンティティとの関係をテストするために、すべてのトップレベルエンティティに対して機能テストと呼ばれるものを作成しました。基本的に、トップレベルのエンティティがインスタンス化され、モックデータを使用してデータが入力されます。その後、すべてのエンティティの依存関係が追加され、モックデータが入力されます。これはすべて、1回の操作でデータベースに永続化されます。次に、エンティティがデータベースから読み戻され、元のデータとの同等性がテストされます。それよりも少し複雑ですが(特に同等性テスト)、関係マッピングのいずれかが変更またはバグが発生した場合、このテストはすぐに失敗し、調査する必要があります。

于 2012-10-28T13:23:39.843 に答える