15

コマンドラインから単体テストを実行しようとしています。次のコマンドを使用して mstest.exe プログラムを使用してみました。

E:\VS Projects\...\>"C:\Program Files (x86)\Microsoft Visual Studio 11.0\
    Common7\IDE\MSTest.exe" /testcontainer:mytest.dll 
    /testsettings:"E:\VS Projects\...\Local.testsettings"

mstest プログラムの応答は次のとおりです。

Microsoft (R) Test Execution Command Line Tool Version 11.0.50727.1
Copyright (c) Microsoft Corporation. All rights reserved.

Loading E:\VS Projects\...\Local.testsettings...
Loading mytest.dll...
mytest.dll
Unable to load the test container 'mytest.dll' or one of its 
dependencies. If you build your test project assembly as a 64 bit assembly, 
it cannot be loaded. When you build your test project assembly, select "Any 
CPU" for the platform. To run your tests in 64 bit mode on a 64 bit 
processor, you must change your test settings in the Hosts tab to run your 
tests in a 32 bit process. Error details: Could not load file or assembly 
'file:///E:\VS Projects\...\mytest.dll' or one of its dependencies. The 
module was expected to contain an assembly manifest.

Local.testsettings には、テストが 64 ビット環境で実行されるという情報が含まれています。

mstest は、ネイティブ テスト プロジェクトではなくアセンブリを想定していると推測できます。これが失敗の理由です。その場合、コマンド ラインからネイティブテストを実行するにはどうすればよいですか? それ以外の場合、mstest が正しく動作するように構成するにはどうすればよいですか?

4

2 に答える 2

24

ハンス・パッサンの指導に感謝します。

解決策は、次を使用することです。

C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe

于 2012-11-29T10:24:34.283 に答える