スクリプトの単体テストを作成する方法
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
前提条件
前提条件
- .NET 6.0 SDK
- Visual Studio Code
- Visual Studio Code C# 拡張機能
- Sitecore Content Hub CLI のインストール手順はこちら
以前のバージョンの CLI からアップグレードする場合 (< 1.1.0)、必要なすべての依存関係が存在することを確認するために、作業ディレクトリを再度初期化することをお勧めします。
ch-cli scripting initialize -f <your-folder-path>
概要
概要
Sitecore Content Hub CLI (> = 1.1.0) では、xUnit.net と NSubstitute を使用してスクリプトの単体テストを作成および実行できます。
制限事項
[Theory]を使用する場合、[InlineData]が現在、テスト メソッドに引数を提供する唯一の方法です。
スクリプトの作成
スクリプトの作成
作業ディレクトリに MyScript.csx という名前で新しいスクリプトを作成します。
テスト スクリプトの作成
テスト スクリプトの作成
単体テスト スクリプトは作業ディレクトリ内の unit-tests ディレクトリにあり、テスト対象のスクリプトにちなんで名付けられる (たとえば、MyScript.csx) ことが期待されます。そのため、スクリプトごとに 1 つのテスト スクリプトを用意することが重要です。
この時点で、ファイル構造は次のようになります。
スクリプト コードの説明
-
名前付きテスト メソッドを作成します。
[Fact]属性は、このメソッドが単体テストであることをテスト ランナーに伝えます。 -
実際のスクリプトに渡される必要なオブジェクトのモックを作成します。これにより、さまざまなシナリオのコンテキストを設定したり、スクリプト内の
MClientインスタンスを介して行われている API 呼び出しを模倣したりできます。この例では、コンテキストのTargetプロパティが明示的にnullに設定されています。 -
関連するスクリプトを (ファイル名に基づいて) コンパイルして実行し、
clientインスタンスとcontextインスタンスを渡します。一般的に使用される AAA (Arrange - Act - Assert) パターンに従う場合、この呼び出しは Act セクションになります。 -
テストの条件が満たされていることを確認します。この場合、エラー メッセージが記録されています。
単体テストの実行
すべての単体テストを実行します。
単一の単体テスト ファイルを実行します。