7.15 ユース ケース スクリプトの Validation メソッドの定義

$Validation$ タグを使用して定義されたメソッドは、ユース ケースの検証を可能にするユース ケース スクリプトのメソッドに名前を付けます。

検証メソッドでは、スクリプトに提供されるオプションにアクセスするために使用される options という名前の 1 つのパラメータを取得します。

以下の例は、ユース ケースの定義ブロックの myValidation という名前の検証メソッドを示しています。検証メソッドは、ユース ケース スクリプトに提供されるオプションのセットを検証するために使用されます。

例 7-13 例

...
$Validation$ myValidation
...
def myValidation(options):
    # トレース範囲の開始および終了を定義するオプションを取得する
    # これらのオプションは $Options$ タグで定義された関数で定義されている
    start = options.getOptionValue("options.traceRange.start")
    end = options.getOptionValue("options.traceRange.end")
    # 検証の条件付きチェック
    if(start >= end):
         # 検証チェックが失敗した場合、ユース ケース スクリプトで特定のエラーを報告する
         UseCaseScript.error("The trace range start must be before the end")

検証を提供する関数が、ユース ケース スクリプト オブジェクトであり、スクリプトで使用するために定義されたオプションにアクセスするために使用される 1 つのパラメータを取得することが重要です。

$Validation$ タグが定義され、このタグで参照されるメソッドがスクリプトに存在しないか、検証関数が誤った数の引数を取得する場合、スクリプトの実行時にエラーが発生します。

エラーの報告

この検証の例によって、ユース ケース スクリプト固有のエラーがスローされます。スクリプトで、start >= end などの検証が正常に実行されなかった場合、DS-5 コマンドラインによって以下が表示されます。

UseCaseError: The trace range start must be before the end (トレース範囲の開始は終了の前である必要があります)

組み込みユース ケース エラー報告が使用されず、以下のような標準的な Jython または Java エラーがスローされない可能性があります。

raise RuntimeError("Validation was unsuccessful")

これによって、DS-5 コマンドラインでエラーが表示されます。

RuntimeError: Validation was unsuccessful (検証は正常に処理されませんでした)

ただし、明確なユーザ定義エラーが発生し、その発生源がユース ケース スクリプトとなるように、組み込みユース ケース スクリプト エラー報告を使用することをお勧めします。

非機密扱いPDF file icon PDF 版ARM DUI0446ZJ
Copyright © 2010–2016 ARM.All rights reserved.