データベースのレコードの整合性をテストするテストシステムを構築しています。データベースは絶えず成長しています。テストインフラストラクチャにどのようなデザインパターンを使用する必要がありますか
私が格納している主要な種類のレコードごとに、レコードを繰り返し処理したいのですが各レコードで一連のテストを実行します。その一連のテストは、ビジネスの進展とともに、問題の原因を特定して解決したと確信しているため、絶えず成長/変化していきます。私は、それぞれのテストを自分のファイルに入れて、追跡しやすいようにしたいと思います。
私はこれを自由にデザインしていますが、私は好きですが - どのようなデザインパターンを見ますか?
注:私がテストしているシステムはPHPです。私はPHPに対して非常に力があります。それは質問された問題については問題ではありませんが、とにかくそれを述べます。
この問題に役立つソフトウェアが存在する場合は、そのことについても聞いています。
訪問者のパターンがここにどのように適用されるかわかりません。何を構想していますか? – Laizer
基本的に、phpUnitはリフレクションを使って訪問者のステロイド効果を少し作ります。基本クラス(テンプレートメソッドがたくさんあります)を拡張するクラスを作成します。次に、testSomeFunctionalityThatYouWantToTest、またはtestSomeOtherFunctionalityなどのメソッドを作成します。phpUnitは、オブジェクトのtest *という名前のすべてのメソッドを呼び出します。これらのメソッドでは、「この関数はこのデータを返す必要があります」などのテストアサーションを行います。 「このテーブルにはこの他のテーブルのすべての行にキーが必要です」などのアサーションを作成することもできます。 –