「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-戻る
--[[テスト]]
--[[移行・マイグレーション]]

* 目次 [#y21f9111]
#contents

*概要 [#ee811862]
.NETでアプリケーションを開発する場合(受託開発)の~

>異種環境への移行時のテスト(OSと.NETバージョンの掛け合わせパターン)
>異種環境への移行時のテスト~
(OSと.NETバージョンの掛け合わせパターン)

というのはどこまでやるか?

*回答 [#xe612a4f]

**前提 [#u2014c27]
.NETでアプリケーションを開発する場合(受託開発)は、
-慣例的に、.NETバージョンはサポート範囲を明確にする(絞る)と思います。
-そして、.NETバージョンに対応するOS毎のテストは、個別契約次第の所があると思います。

**事例 [#nc226850]
過去に、.NETバージョン違い、OS違いなどで以下の様な差異の事例がありました。

-.NETバージョン違い

--.NET4.5の Windows Aero (エアロ) では、~
FixedSingleのWindow枠が太く表示される。~

--.NET4以前の Windows Aero (エアロ) では、~
FixedSingleのWindow枠が細く表示される。

-OS違い
--OSによって動いたり動かなかったり、Win32APIを変更したりする必要があるケースがあります。
--OSによって動いたり動かなかったり、
--Win32APIを変更したりする必要があるケースがあります。
---[[Windowを前面に出す]]

-その他
--IMEバージョンによって入力変換状態からマウスで~
特定コントロール間を移動すると、移動元のコントロールで入力が確定される。~
(期待する動作は、入力変換状態のテキストもコントロール間を移動する)

**分析 [#n941a60b]
-内部での計算処理に関する動作の変更は大きな誤作動の原因になるので~
.NETバージョンを固定していれば変更は(ほぼ)無いと考えて良いかと考えますが、~
前述の事例の様に、UI周りはそうでもない(変更がある可能性がある)ので、~
その辺り(UI周り)のテストがクロス・プラットフォームで必要になることが多いように思います。

-例えば、当プロジェクトで開発している[[.NET用アプリケーション開発フレームワーク(Open棟梁)>https://github.com/OpenTouryoProject/OpenTouryo]]は、~
異なるOS、.NETバージョンを採用する複数の案件に適用されていますが、~
.NET部分の内部での処理に関する動作の違いが報告された事はありません。
-例えば、当プロジェクトで開発している~
[[.NET用アプリケーション開発フレームワーク(Open棟梁)>https://github.com/OpenTouryoProject/OpenTouryo]]は、~
異なるOS、だけでなく、異なる.NETバージョンを採用する複数の案件に適用されていますが、~
.NET部分の内部での処理に関する動作の違いが報告された事例はありません。

--このため、ほぼストレート・コンバージョン&疎通確認程度でリリースしています。~
>ただし、これは~
--このため、ほぼストレート・コンバージョン&疎通確認程度でリリースしています。

---ただし、これは~
「基盤は開発するユーザ・プログラムによりテストされるため、リスクが少ないため」~
という所に拠っています。

--従って、ミッション クリティカルなシステムを移行する場合、~
---従って、ミッション クリティカルなシステム(基盤でなくウワモノ)を移行する場合、~
上モノのユーザ・プログラムの環境移行+ストレート・コンバージョン~
(OSや.NETバージョンを跨ぐ)に対しては、厳密にはテストが必要になります。

-なお、32bit → 64bitでは、P/Invokeでネイティブ・コードを呼び出している場合、~
動作が異なるケースが幾らか報告されていますので必要に応じてテストが必要と考えます。

*参考情報 [#x7ddca1d]
-[[Windows, IE移行]]
-[[64bit対応]]

----
Tags: [[:移行]], [[:テスト]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS