VS11 RCを使用。C# 単体テスト ライブラリ (メトロ スタイル アプリ) プロジェクトでテストしようとしている C++ で記述されたクライアント実行可能ファイルがあります。テストは例外Class not registered HRESULT 0x80040154 (REGDB_E_CLASSNOTRG)で失敗します。これは、テスト プロジェクトの警告に関連していると思われます:実行可能ファイル 'Client.exe' は、winmd ファイル 'C:.Client.winmd' の実装として指定されています。アプリ マニフェストでの登録情報の生成では、インプロセス サーバーのみがサポートされています。アプリ マニフェストでアウトプロセス サーバーの登録情報を指定する必要があります。
MSTest はクラスを COM オブジェクトとして探しているように見えますが、警告はそれをアウトプロセス サーバーとして指定する必要があることを示しています。残念ながら、それは実行可能ファイルであるため、実行したくないと思います。それが必要な場合でも、方法がわかりません。
テスト中のクラスを別のプロジェクトに移動することもできますが、「これを機能させることができない」よりも良い理由なしにそれを行いたくありません。
Metro 実行可能ファイルで定義されたクラスを単体テストする方法はありますか?