0

MSTest を使用する場合、テスト データ フォルダーを TestResults ディレクトリに展開する方法は?

私の UnitTests プロジェクトには、いくつかの xml ファイルをテスト データとして含む TestData フォルダーがあります。

テストの実行時に TestData フォルダーを展開するように ci.testrunco​​nfig を更新しました。

<Deployment>
    <DeploymentItem filename="TestData" outputDirectory="CustomFolder/TestData" />    
  </Deployment>

ただし、フォルダーは展開されません。

修正方法は?

たとえば、特定のファイルに対して「出力ディレクトリにコピー」を「常にコピー」に設定することでファイルを展開できますが、ファイル/フォルダーが展開される場所を制御できないため、このアプローチは避けたいと思います.

4

2 に答える 2

0

EDITED VS2010以降で which を使用しているため、VS2005-VS2008で作業することを見逃しまし.testrunconfig.testsettings

とにかく、私は非常によく似た問題に苦労しました。それが私が見つけたものです。次のいずれかの方法で、フォルダを TestResults ディレクトリに展開できます。

  1. .testrunconfigまたは で配置を有効にするチェックボックスを設定します .testsettings。展開する必要があるフォルダーを選択します。フォルダーはデプロイされませんが、フォルダーの内容は TestResults ディレクトリにデプロイされます (フォルダーが空の場合は何もデプロイされません)。TestResults ディレクトリのルートにあります。フォルダとフォルダのコンテンツを展開する必要がある場合は、オプション No 2 があります。

  2. 再度、 または で展開を有効にするチェックボックスを設定し .testrunconfigます .testsettings[DeploymentItem(pathOrigin, pathDest)]属性を使用します。PathOrigin絶対パスまたは相対パスにすることができます。相対パスは、またはファイルRelativePathRootで見つかった設定に対する相対パスです。はデフォルトでソリューション フォルダーなので、ディレクトリを TestResults に展開するために使用します。MSTest がディレクトリ (またはファイル) を見つけられない場合、TestProject のフォルダーでそれを見つけようとします。.testrunconfig.testsettingRelativePathRootProjectname/DirectoryNamebin

TestViewまた、テスト設定を使用したすべての実験の後、ウィンドウを手動で更新する必要があります

于 2013-04-04T11:12:47.973 に答える
0

DeploymentItem タグを使用する必要があります。クラスまたは特定の単体テストで実行できます。テスト プロジェクトで、展開する必要があるディレクトリとファイルを追加します (たとえば、MyFiles)。

テスト クラス ass DeploymentItem で、ディレクトリ名を指定します。

[TestClass]
[DeploymentItem("MyFiles")]
public class MyClassTest
{
    [TestMethod]
    public SomeMethodTest()
    {
        // Your unit test.
    }

    [TestMethod]
    [DeploymentItem("MyFiles")]
    public AnotherMethodTest()
    {
        // Your unit test.
    }
}
于 2013-04-04T08:37:06.853 に答える