ここにトリッキーなものがあります:
Test(string value)
異なるパラメータ値で数回呼び出す必要がある単体テストがあります。- 提供される値のリストは、の属性で
GetValues()
指定された別のメソッドから読み取られます。[Test]
Test()
GetValues()
Values.txt
値を返すには、作業ディレクトリ内のファイルの内容を読み取る必要があります- 作業ディレクトリはテストアセンブリディレクトリではありません
これを実現するにGetValues()
は、が呼び出されたときに作業ディレクトリを知る必要がありますが、次の理由でこの情報を見つけることができません。
Directory.GetCurrentDirectory()
nunitが呼び出された作業ディレクトリではなく、アセンブリのディレクトリを返します。TestContext.CurrentContext.WorkingDirectory
はまだ定義されておらず、結果としてSystem.NullReferenceException
また、フィクスチャのセットアップ中にファイルのコンテンツをロードしようとしましたが、これは後GetValues()
に呼び出されるため、運がありません。ファイルを見つけることができますが、nullポインタ例外がすでに発生しています。
誰かアイデアがありますか?よろしくお願いします
セドリック。