Microsoftは、6以降の全てのIEの動作をテストできる手段として、「Modern.IE」というサービスを提供しています。
タイトルでは無料と言っていますが、実際には一部のサービスのみが無料となっています。
本来なら有償のサービスを売り込みたいところなのでしょうが、残念なことに無料のサービスの方が、SI業界の人間であれば待ってましたと言わんばかりの機能性を兼ね備えてしまっています。そのサービスとは「Modern.IE VM」です。
Modern.IE VMとは?
Modern.IE VMとは、90日間無償で利用できる、IEテスト用のVMイメージです。ライセンスが切れても、正規の手順を踏めば再びライセンスされるため、この点で単なる試用版とは異なる特性を持っているように思えます。Windows版の場合、以下の仮想化製品のVMを提供しています。
- Hyper-V(Windows Server 2008 R2 SP1以上)
- Hyper-V(Windows Server 2012 以上/Windows 8 Pro)
- Virtual PC (Win7用)
- Virtual Box
- VMWare Player
Webコンテンツは、「OS」+「ブラウザの種類/バージョン」+「ブラウザの制御パラメータ」の3つの組み合わせにより、動作が異なるという特徴を持っていますが、Modern.IE VMではOSとIEのバージョンの組み合わせによる再現性を、ある程度までは網羅できるような状態で提供しています。具体的には、以下のセットです。(2013年12月31日現在)
IE6 | IE7 | IE8 | IE9 | IE10 | IE11 | |
Windows XP Professional SP3 | ◯ | ✕ | ◯ | - | - | - |
Windows Vista Enterprise SP2 | - | ◯ | ✕ | ✕ | - | - |
Windows 7 Enterprise | - | - | ◯ | ◯ | ◯ | ◯ |
Windows 8 Enterprise | - | - | - | - | ◯ | - |
Windows 8.1 | - | - | - | - | - | ◯ |
※ ◯=有り、✕=無し、-=動作不可
ダウンロードは、以下のURLへアクセスし、ページ中央の「Mac、Linux、Windows 用の仮想マシンをダウンロードします。」というタイトルのすぐ下で、セレクトボックスの内容を選択しながら進めていきます。
Modern.IE VM - http://loc.modern.ie/ja-jp/virtualization-tools#downloads
※ 左は仮想化ソフト自体を動かすOS。右は仮想化ソフトの種類です。
ダウンロードファイルのサイズが大きい場合は、分割されています。「.exe」で終わるファイルを実行し、ファイルを一つに繋げる必要があります。なお、Windows XP系VMは日本語が表示できないので、Windows XPのインストールイメージファイルを用意し、ランゲージパックを取得しインストール必要があります。
一つのOS上で、2バージョン以上のIEがテストできる
わざわざ複数のWindowsのマシンを起動しなくても、異なるOS、異なるバージョンのIEがテスト出来るというのは、環境の多様化が進んだ現在において必須のツールでしょう。特に、IE8を動作対象ブラウザにしてしまった場合、IE8とIE9以上の2バージョンでテストしないといけないため、使わないという道すら残されていないように思えます。(→理由がわからない方は、こちらの記事をご覧下さい)
ただ、業務系システムのプロジェクトだと、やはり問題は色々出てきます。まず、セキュリティソフトの入っていないOSを、例え仮想マシン上とはいえ、動作させることを許してくれるかどうか。また、ユニットテストのようなIDEがもろに動いているようなフェーズでは、メモリが不足し動作が困難になるかもしれません。
なんだかんだ言っても、JUnitを扱うようなノリでさらっとRFPやらシステム提案書に書けるほど簡単で無いのがこのサービスの難しい所です。色々なリスクを抱えつつも、そのコストパフォーマンスの高さからどうにかしてでも使いたくなる、いかにもありがちなジレンマに陥っています。
利用時の注意点
ここからは、Modern.IE VMの商用利用時の注意点についてまとめます。 なお、参考にしているライセンスは、2013年7月22日現在のものです。
(※参考 : license 2013-07-22 - Modern.IE )
リバースエンジニアリングするなとかリコンパイルするなとか、Microsoft製品全般に言える、基本的な部分については全て割愛しています。
★ テスト以外には使ってはいけません!
- テスト用途として利用することが許されます。
- 業務用のOSとして使ってはいけません。
- 日常利用するためのOSとして使ってはいけません。
※ 2番について利用許諾内の解釈が難しかったためMicrosoftに確認したところ、あくまで「テスト」という目的であれば、商用の開発プロセス内で組込み利用することが可能とのことです。つまり、普通のSIの開発のテストフェーズで利用する分には何も問題無いということです。
★ ライセンスは90日間です!
- VMのダウンロードを行うと、利用許諾に同意したものとみなします。
- ダウンロードしたVMイメージ、もしくは初期起動後の状態のスナップショットが、90日間だけライセンスが有効となります。
- ライセンスが切れても、再度ライセンスすることができます。(1回目が切れたから、2回目という使い方はOK。要は、同じVMを91日以上使うなという意味。ライセンスが切れると、そのVM内に含まれているデータを取り出すだけでもアウトとも読み取れますので、テストという特性上注意が必要ですね。)
- アクティベーションを促されますが、アクティベーションしてはいけません。(プロダクトキーとか入れないで使ってくれという意味です。)
※ 上記、2と3についてはMicrosoftへ確認し発覚した点の共有です。
★ 物理マシンに1台までです!
- VMは一度に一人しか利用できません。一人に対して、一つのOS一つのハードウェアでしか使ってはいけません。
- 物理マシン上でしか利用してはいけません。
- ストレージがケーブル接続されているコンピュータのハードウェアに限ります。
- ハードウェアパーティションで区切られたもの、ブレードPCも1台とみなします。
- リモートアクセスは許可されています。(※XP/Vista/7/8系個別で定義されており、全てのライセンスで許容されている模様。)
※ このあたりは、シンクライアント環境下の開発のまとめです。一つのハードウェア上に複数VM動かして良いのかという点については、文章からはあまり読み取りにくい感じです。アウトなニュアンスに見えます。
UNIX系環境で楽してダウンロードする方法
wgetで、分割されたファイルを一括ダウンロードする方法もあります。各VMのダウンロードまとめに、ダウンロード先が記述されている「.txt」で終わるテキストファイルがあるので、これを直接指定すれば楽できます。
wget –i https://az412801.vo.msecnd.net/.../IE8.Win7.For.LinuxVirtualBox.txt