GUIテスト用の仮想マシンをHyper-VからVMware Workstation Proへ移行

Rust製Windowsアプリ(WinRemap)のGUIテスト環境をHyper-VのVM上に作ったが、 設定画面がVM内で開けなかった。
原因を切り分けてVMware Workstation Proへ移行するまでの覚書。
この記事はClaude Opus 5が生成。

環境: Windows 11 Pro 25H2 / Hyper-V → VMware Workstation Pro

前提として、テスト自動化にはTerminator(mediar-ai)を使う想定。
UIAベースなので、そもそもウィンドウが表示されないと何も始まらない。


Hyper-VはOpenGL非対応

Hyper-Vの仮想マシンに割り当てられる合成ディスプレイアダプターは、OpenGL 2.0以上をサポートしない。
 一時的な不具合ではなく、環境側の恒久的な制約。


仮想化基盤の比較

VMware Workstation Pro / VirtualBox / 現行Hyper-Vの3つを比較した。

必須要件

VMware Workstation Pro

VirtualBox 7.x

Hyper-V

WindowsゲストのOpenGL

◎ SVGA3DドライバでOpenGL 4.3HWバージョン20以上)。
公式ドキュメントに明記

✗ 6.1VBoxVGA が廃止され、Windowsゲストのアクセラレート OpenGLは実質喪失。
Guest AdditionsOpenGLドライバも2.1止まり

なし
(今回の問題)

コンソールセッションでのUI自動化

vmrun runProgramInGuest -interactive / -activeWindow が公式機能

VBoxManage guestcontrol run はサービスセッションで起動する既知の制約

タスクスケジューラで回避(実装済み)


全体比較

評価軸

VMware Workstation Pro

VirtualBox 7.x

 Hyper-V

ゲストOpenGL

◎ 4.3

なし

対話セッション実行

標準機能

回避策必要

回避策実装済み

キー注入(Press any key突破)

相当機能なし

controlvm keyboardputscancode

◎ WMI Msvm_Keyboard.TypeKey

VM作成CLI

vmcli + .vmx 直書き

VBoxManage createvm/modifyvm が網羅的

◎ PowerShell Hyper-Vモジュール

スクリーンショット

vmrun captureScreen

controlvm screenshotpng

未実装(WMIで実装可能)

ゲスト実行の経路

VMware ToolsNW不要)

Guest AdditionsNW不要)

PowerShell DirectNW不要)

スナップショット / エクスポート

vmrun snapshot / フォルダコピー

snapshot / exportOVA

実装済み

Win11要件(TPM / Secure Boot

◎ 7.0+

ライセンス(商用利用)

◎ 2024/11から全機能無償(キー不要)

本体はGPLv3で無償。Extension Packは商用有償

◎ OS同梱

ホストのHyper-Vとの共存

△ WHPモードで動作

動くが低速・不安定の報告あり

3Dスタックの成熟度

長年の実績

近年まで不安定


ホストのHyper-Vを切るかどうか

ホストでHyper-Vを有効にしたままだと、VMwareはWindows Hypervisor Platform(WHP)モードで動作する。
このモードで3Dアクセラレーションが効くかどうかは、公式ドキュメントで確認できなかった。

選択

影響

Hyper-Vを残す

VMwareWHPモードで動作。
3Dアクセラレーションの可否・性能が公式文書で確認できず、要実機検証

Hyper-Vを切る

3Dも性能も確実。
ただしWSL2 / Docker Desktop / Windows Sandbox / メモリ整合性(VBS)を失う


移行してみた結果

やったことは4つ。

  1. ホストのHyper-Vを無効化して再起動。
    Win32_ComputerSystem.HypervisorPresent = False を確認し、VMwareがネイティブ仮想化で動く状態にした
  2. スクリプトでWindows 11ゲストを自動作成(無人ブートISOの自作で「Press any key」を回避、Win11要件バイパス、VMware Toolsの無人導入)
  3. vmrun snapshot でクリーン状態のスナップショットを作成
  4. OpenGL描画の検証


まとめ

Hyper-Vは無償で手軽だが、ゲストにGPU/OpenGLが要る用途には向かない。
GUIを持つアプリのテスト自動化をVMでやるなら、最初からVMware Workstation Proを選ぶのが早い。
2024年11月から商用でも無償になったので、選ばない理由もあまりない。

Mesa3D(ソフトウェアOpenGL)案は結局使わずじまいだったが、 VMwareゲストでも同じ手が使えるので、保険としては残っている。


▼ 関連記事