VS2010の使用ファイルを出力するコマンドラインコマンドを実行するメソッドを呼び出すテストがあります。TFS:C#の出力ディレクトリを参照する方法
ファイルがに出力される。
アウト ... \ TestResults \ XXXXXX 2011-02-04 09_45_46 \私は、ファイルが正常に
を書いてしまったことをテストしたい参照のいくつかの方法がありますそれをハードコーディングせずにこのパス?
VS2010の使用ファイルを出力するコマンドラインコマンドを実行するメソッドを呼び出すテストがあります。TFS:C#の出力ディレクトリを参照する方法
ファイルがに出力される。
アウト ... \ TestResults \ XXXXXX 2011-02-04 09_45_46 \私は、ファイルが正常に
を書いてしまったことをテストしたい参照のいくつかの方法がありますそれをハードコーディングせずにこのパス?
申し訳ありません、あなたを今すぐ入手します。
単体テストクラスに付属するTestContextプロパティを使用できます。 ResultDirectory、TestDir、TestDeploymentDirなどのプロパティがあります。
TestClassにそれがない場合は、TestContextという名前のパブリックTestContextプロパティを追加します。
新しいUnit Testクラスを作成し、その使用方法を確認することをお勧めします。
パスのxxxxxx 2011-02-04 09_45_46
部分を参照していますか? ...\TestResults\
パスのフォルダを通過し、最後のフォルダ(必要なファイル)を取得し、Path.Combineを使用して完全なパスを作成するだけです。次に、ファイルが存在するかどうかを確認して確認するだけです。
プロジェクトのビルドイベントで特殊変数を指定することができます。ここで
は参照です:Macros for Build Commands and Properties
私はOUTDIRやTARGETDIRは、あなたが探しているかもしれないものである数えます。
私は昨日これをしなければならなかった:
string outputDir = new DirectoryInfo(Assembly.GetExecutingAssembly().Location).Parent.FullName
他、より堅牢な私見、オプションでは、既知の場所(すなわちPath.GetTempPathとして指定できるコマンドラインユーティリティへの出力パスを提供することですまたはPath.GetRandomFileName)。そうすれば、壊れやすいテストランナーの依存関係は埋め込まれません。
C#でやってみる。これらの変数をC#で使用できますか? – Bob