維持および開発するための厄介なDelphi7レガシーシステムがあります。私はすでに「レガシーコードを効果的に使用する」を読んでいて、この本がとても好きです。
本のアドバイスに従うことを始めるために、私はテストプロジェクトを作成し、単一のテストを書いてみました。これを行うには、テストプロジェクトにユニットを追加する必要がありますが、ここに問題があります。テスト対象のシステムには、恐ろしい使用依存関係があります。あるユニットは他のユニットを使用し、他のユニットは他のユニットを使用します。ほとんどのユニットは、直接的または間接的に1つの特定のユニットを使用しているようであり、このユニットには、uses句に170の依存関係があります。間接的な循環依存関係もあります。
現在、レガシーシステムのすべてのユニットをテストプロジェクトに追加しようとしていますが、「ユニットxxxが異なるバージョンのxxxでコンパイルされた」などのあらゆる種類の問題が発生しています。
だから私は何か間違ったことをしているのだろうか。私は以前に単体テストを使用しましたが、私自身のプロジェクトでは、より小さく、より優れた構造とモジュール化を備えていました。この状況で私が持っているオプションは何ですか?私は何かが足りないのですか?