「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
- I/F変更が無い場合、利用者側の修正・リビルドが不要なこともある(動作上問題なければ)。
- しかし、「定数 列挙型」などの変更時は、「ライブラリ利用者」側のリビルドが必要になる。
対応 †
自前 †
ライブラリの変更点が明確なら、ソレに合わせてテストを実施すれば、「ライブラリ利用者」側のリビルドは不要。
製品 †
- 製品系は
- GACに格納する事が多く、GACへの格納には厳密名が必須。
- 厳密名 + バージョン番号変更でリビルドが必要になってくる。
- なので、基本的に、製品系のバージョンアップではリビルドが必要になってくるが、
「アセンブリ バージョンのリダイレクト」でリビルドをしないで対応可能。
昨今 †
- 最近は、NuGetでガンガン取ってくることが増えた。
- NuGetは、GACに入れるのではなく、packagesフォルダで管理する。
なので、厳密名が設定されていないケースも増えてきていると思う。
- こういう文化ではライブラリの更新頻度も高いので、いろいろ悩ましい。
↓ 月単位で更新されるライブラリの例。
https://www.nuget.org/packages/Npgsql/
- NuGetは開発環境、ビルド動作と紐付いているので、
運用中に下位のDLLだけ差し替えるという運用は無い。
- しかし、度重なる更新をテストしきれるか?は別の話。
こういうケースに、レグレッション系のテスト自動化がハマるのではないか?
参考 †
Tags: :テスト