16

通常のアプリケーション プロジェクトと同じように、MS Tests プロジェクトの作業ディレクトリを設定するにはどうすればよいですか? テストするコンポーネントは、他のアプリケーションでも使用されるいくつかの構成ファイルにアクセスする必要があります。これらのファイルは作業ディレクトリにあると予想されるため、これまでのところ、これらのファイルをテスト プロジェクトの bin/debug フォルダーにコピーする必要があります。

テスト プロジェクトの作業ディレクトリを設定することはできますか?

4

3 に答える 3

5

Visual Studio 2012 を使用している場合、Properties|Build|OutputPath でテスト プロジェクトの出力ディレクトリを設定すると、Visual Studio からテストを実行するときにそのディレクトリが作業ディレクトリになります (Vstest.console.exe を使用しているため)。 . テスト dll などを他のファイルと同じディレクトリに出力したくない場合や、他のファイルをテスト プロジェクトのコンテンツとして使用したくない場合 (Schaliasos の提案による)、次のように設定できます。[AssemblyInitialize]属性を持つメソッドの起動時のパス。System.Environment.CurrentDirectoryこれを行うには、通常どおり割り当てます。おそらく、作業ディレクトリを設定として使用するか、構成ファイルから読み取る必要があります。

編集

Rohit.Net で指摘されているようRun All Testsに、デフォルトのパスを選択すると、TestResults の下になります。runsettingsファイルを使用する場合も同様です。DeploymentItems を使用しておらず、次の場合は、出力フォルダーがデフォルトの作業ディレクトリになります。

  • Visual Studio でテストを右クリックし、実行/デバッグを選択するか、
  • vstest.console.exe を使用して、コマンド ラインから実行します。
于 2013-08-06T02:54:55.300 に答える
2

テスト プロジェクトの作業ディレクトリは、テストの実行開始時に作成されます。

それらをローカルで実行すると、これはTestResultsプロジェクト フォルダー内のフォルダーに作成されます。これらをリモート マシンで実行すると、次のパスの各テスト エージェントに異なるフォルダーが作成されます。

C:\Users{userRunsTheTest}\AppData\Local\VSEQT\QTAgent\{GuidForThisRun}

ファイルをこれらのフォルダーに展開してアクセスできるようにするには、次のことを行う必要があります。

  1. をセットするCopy to Output Directory = Copy Always
  2. これらのファイルを必要とするテストでは、それらをDeploymentItemsとして設定します。
于 2013-03-21T09:12:45.827 に答える
1

Run All testsVisual Studio 2012 のテスト エクスプローラーから選択すると、Acarlon の提案が機能しません。

...\TestResults\Deploy_<YourName>2014-01-13 14_48_20\Out取得するデフォルトのパスは、フォルダーのようなものです。

このため、エンティティがエンティティ関連のテストを実行するために接続を開こうとすると、DB にアクセスできない可能性があります。

私の場合、リソース ファイルとして設定され、常にコンパイルされ、Bin/Debug/Resourceフォルダーにドロップされる SQL CE を使用しています。

于 2014-01-13T09:38:26.293 に答える