■ 問題点
http://gushwell.ldblog.jp/archives/50742513.htmlにも記載されているが、VS のテスト実行環境は、テストを実行する度に、TestResultディレクトリ配下に、 新たなフォルダが作成され、そこでテストが行われるため、debug\binなどにファイルを置いても、利用できない。
■ 手順
構成例
TestProject | +--【テストプログラム】.cs | +-- Csv(配下のファイルをテストで使いたい) | +-- test1 | | | +-- test.csv | +-- test2 | | | +-- test.csv +-- test3 | | | +-- test.csv ・・・
準備
[1] [テスト]-[テストの実行構成の編集]-[ローカルテストの実行]を選択 [2] [配置」-[ディレクトリの追加]or[ファイルの追加]でテストに使うフォルダ・ファイルを選択して追加する (例で言うと[配置」-[ディレクトリの追加]で「Csv」を選択し、追加) [3] [閉じる]を選択
テストファイル
* 「this.TestContext.TestDeploymentDir」を組み合わせて対象ファイルのパスを取得する (以下は、上記の例でのテストのソースのサンプルである)サンプル
/// <summary> /// ReadCsvFile のテスト /// </summary> [TestMethod()] public void ReadCsvFileTest() { string filePath = Path.Combine(this.TestContext.TestDeploymentDir, @"test1\test.csv"); // ... }
関連記事
MS-Test
VSの単体テストのあれこれhttps://blogs.yahoo.co.jp/dk521123/18458247.html
単体試験で外部ファイル(CSVなど)からデータを取得する
https://blogs.yahoo.co.jp/dk521123/31885401.html
private に関するテスト
https://blogs.yahoo.co.jp/dk521123/38022249.html