2

バックグラウンド:

カスタム WinForms インストール プログラムを簡単にインストールして起動する Windows インストーラーがあります。このカスタム インストーラーは、IIS Web アプリケーションの作成、dll のコピー、データベースのインストールなど、実際のインストールを行います。

ここで、本番環境で使用するのと同じインストール手順を使用してソフトウェアをインストールすることを含む、いくつかの自動化された受け入れテストを作成したいと考えています。専用のマシンで毎晩受け入れテストを実行することから始め、その後、継続的インテグレーション パイプラインの一部として実行したいと考えています。

問題:

WinForms のインストール プログラムを自動化するのは難しいことがわかっています。また、受け入れテスト用の特別なインストール コードは必要ありません。

質問:

展開プロセスを自動化されたテストに統合することについて、頭のいい人にどんなアドバイスがありますか?

インストーラーに WinForms を使用するという決定は、特に、結果として得られるアプリケーションが実際のインストール コードから UI コードを明確に分離していないため、悪い選択だったと思います。

4

1 に答える 1

5

Windows フォームを使用して独自のインストーラーを作成するのではなく、MSI ベースのインストーラーを使用することをお勧めします。インストーラーを作成するための人気のある無料のオープン ソース ツールセットであるWindows Installer XML (WiX) ツールセットの使用を検討してください。

MSI を使用することには多くの利点があります。特に、インストーラーのロジックと UI を混在させることがかなり難しくなり (成功の穴に落ちるようなものです)、リモート マシンでの実行に適した無人インストーラーを作成するのは簡単なことです。

現在のインストール方法にすでにコミットしている場合は、UI とロジックを分離して、UI を表示せずにインストールを実行できるようにする必要があります。これ以上の方法なしでこれを行う方法について具体的なアドバイスを与えることは困難です。具体例。

于 2011-09-07T16:19:22.923 に答える