TestSourcesは、 .NETコアと.NETフレームワークのテストファイル管理ツールです
TestSourcesは、.NETテストでテストファイルを簡単に処理、整理、使用できます。ファイル管理ツール/コードを設定し、検証を実装し、ファイルとそのコンテンツへの適切なアクセスを有効にするという通常の作業を大幅に簡素化します...それらは、あらゆる種類のファイルを管理するすべてのテストプロジェクト、時間を消費し、コードを繰り返す必要があります。それは悪です。しかし、これ以上は、ここに支援するテストソースがあります。
開始するには、TestSources Nugetパッケージをインストールします。
dotnet add package TestSourcesプロジェクトのルートに、「 __testsources__ 」という名前の新しいフォルダーを追加します。小文字で、2人のアンダースコア文字「 _ 」が前後にある必要があります。 Tessourcesフォルダー内で、「atextfile.txt」という名前のテキストファイルを作成し、「テキスト」または好みのテキストを追加します。
このテストファイルを取得し、ユニット(または統合)テスト内で使用するには、次のステップに従ってください。
testSources getFileステートメントTestSource.GetFile("aTextFile.txt");ユニットテストに。
例:
/// <summary>
/// Tests if the test file contains some text.
/// </summary>
[ Fact ]
public void TestThatTheTextFileContainsText ( )
{
// arrange
string fileName = "aTextFile.txt" ;
// act
string textInsideTheFile =
TestSource . GetFile ( fileName )
. AsString ( ) ;
// Assert
Assert . NotEmpty ( textInsideTheFile ) ;
} TestSource.GetFile()ステートメントは、「 __testsources__ 」フォルダーにある指定された名前のファイルを取得します。次に、Metacheaned AsString()ステートメントはその内容を取得し、UTF-8エンコードを使用して、文字列形式で使用できるようになります。 (設定可能です)
「 __testsources__ 」フォルダー内にフォルダを作成できます。これは、オペレーティングシステムによって設定されたものを除いて制限なしで制限できます。
同じことがファイルにも当てはまります。任意のレベルでそれらを追加し、想像力を使用してテストファイルがあなたを喜ばせるまで整理することができます。
ステートメントTestSource.GetFile(filename, true) 、存在し、適切に入力したことを考慮して、TestSourcesルートディレクトリの下に任意のファイルを取得します。
さらに、同様のステートメントを持つフォルダーへの参照を取得できます。
TestSource.GetFolder(foldername) 、testSourcesルートディレクトリのルートにfoldernameという名前のフォルダーを見つけますが、 TestSource.GetFile(filename, true)そのサブフォルダーのいずれかに指定されたフォルダーを見つけます。
ファイルはITestSourceFileインターフェイスを満たします。これにより、親をチェックし、ファイル名、パスを含むフルネーム、次のようないくつかの拡張機能を取得できます。
OpenRead() - ファイルストリームを返す読み取りのファイルを開きます。AsString() - 現在のファイルを読み取り、デフォルトのUTF8エンコードを使用して文字列としてコンテンツを返します。これはオーバーライドできます。AsByteArray() - 現在のファイルを読み取り、コンテンツのバイト配列を返します。AsFileStream() - 現在のファイルを読み取り、Filestreamを返します。AsMemoryStream() - 現在のファイルを読み取り、その内容をメモリストリームとして返します。AsStream() - 現在のファイルを読み取り、その内容をストリームとして返します。GetHash() - 暗号化ハッシュアルゴリズムを与えられた場合、ファイルのハッシュを返します。AsType<T>() - ファイルのコンテンツをコンクリートタイプとして返し、JSONコンテンツを脱出します。AsJson() - 現在のファイルを読み取り、デフォルトのUTF8エンコードを使用してJSON文字列としてコンテンツを返します。 フォルダーまたはディレクトリは、 ITestSourceDirインターフェイスを満たしています。これにより、親を確認し、フォルダー名、パスを含むフルネーム、次のようないくつかの拡張機能を取得できます。
GetFiles() - このフォルダーに含まれるファイルのリストを返します。もちろん、ItestSourceFileインターフェイスを満たします。GetFolders() - このフォルダーに含まれるフォルダーのリストを返します。もちろん、ItestSourcedirインターフェイスを満たします。 (ファイルやフォルダーがない場合、コレクションは空です) 彼らは単に働く、特にそこにセットアップするものは何もありません。
このプロジェクトは、私たちのコミュニティで予想される行動を明確にするために、貢献者契約によって定義された行動規範を採用しています。詳細については、スイスライフOSS行動規範を参照してください。