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

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

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

例 7-12 例

...
$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 DUI0446WJ
Copyright © 2010-2015 ARM.All rights reserved.