受け取ったパラメータに基づいてオブジェクトを作成するファクトリクラスがあります。パラメータは、作成するオブジェクトを指定する識別子です。その最初のステップは、データアクセス層を使用してオブジェクトの情報を取得することです。その次のステップは、データに対していくつかのクレンジング/変換を行うことです。最後に、必要なオブジェクトを作成して返します。
クレンジング/変換ステップが正常に行われたことを確認したいのですが、返されるオブジェクトは状態を公開しないため、簡単にテストする方法がわかりません。
データアクセス層とデータベース構造は、レガシーコードで動作する必要があるため、変更できません。
オブジェクトが使用された後、システムでさらにテストすることはできますが、それは維持するのが難しい大きなテストにつながります。
オブジェクトの状態を公開したり、責任を別のクラスに入れてテストしたりすることも考えましたが、どちらのオプションも、テスト用にシステムを変更しているようです。
このようなものをテストする他の方法について何か考えはありますか?