カスタム属性

VirtualUser と呼ばれるカスタム属性をクラスに適用できます。 この属性により、アドインの BDL 生成エンジンで仮想ユーザー定義が生成されます。 VirtualUser 属性が適用された複数のクラスを実装できます。 VirtualUser 属性は、仮想ユーザー名をパラメータとして受け付けます。

注: BDF ファイルを手動で変更すると、ファイルを上書きするかどうか指定するよう求められます。

BDL 生成エンジンでは、Transaction 属性が適用されたメソッドに対して、VirtualUser クラスのメソッドが解析されます。 Transaction 属性は、最初のパラメータとして、トランザクション タイプ InitMain または End をとります。 InitEnd トランザクションは 1 つのみですが、Main トランザクションは複数可能です。

Main トランザクション タイプでは、テスト中に呼び出されるトランザクションの回数を 2 番目のパラメータに指定できます (デフォルトは 1)。

利用可能なカスタム属性およびその BDL 生成エンジン スクリプトを次に示します。

属性クラス 適用対象 パラメータ 説明
VirtualUser クラス 仮想ユーザー グループ名

(オプション) IsUnitTest

仮想ユーザー グループを定義します。

true を指定すると、標準の DotNet メソッド (DotNetUnitTestLoadObject など) の代わりに DotNetUnitTest メソッドがスクリプト化されます。

Transaction メソッド タイプ (Init、Main、End)

タイプが Main の場合は、トランザクションの繰り返し回数

(オプション) 名前

仮想ユーザー グループのトランザクションを定義します。

トランザクションの実装により、.NET オブジェクトのメソッドが呼び出されます。

Init トランザクションの最初のスクリプト呼び出しは、オブジェクトをロードする DotNetLoadObject です。End トランザクションの最後のスクリプト呼び出しは、DotNetFreeObject です。

必要に応じて、このトランザクションに対して生成された BDL スクリプトで使用する名前を定義できます。 デフォルトでは、VUser 名とメソッド名を組み合わせて BDL でトランザクション名が作成されます。

TestMethod メソッド   現在のトランザクションでメソッドの呼び出しがスクリプト化されます。

現在のトランザクションは、Transaction 属性を持つ前のメソッドです。 したがって、この属性を持つメソッドの前に、Transaction 属性を持つメソッドが存在しない場合、意味をなしません。

TestAttribute メソッド 属性名

属性値

(オプション) 説明

Transaction 属性または TestMethod 属性のいずれかを持つメソッドに対して複数回適用できます。

このメソッドを呼び出す DotNetCallMethod の前に、AttributeSetString 関数がスクリプト化されます。 AttributeSetString により、指定された名前と値で属性が設定されます。 パラメータは、このようにしてスクリプトから .NET 関数に渡すことができます。 .NET 関数は、Bdl.AttributeGet を持つ属性を読み取ることができます。 つまり、完了しているスクリプトを受け取る QA 担当者は、AttributeSetString に渡された値を変更するだけでスクリプトをカスタマイズすることができます。 したがって、.NET コードを変更する必要はありません。

プロジェクト属性の説明を定義できます。 説明は、Silk Performer のプロジェクト属性ウィザードに表示されます。

VirtualUserInitialize メソッド   このメソッドは、DotNetUnitTestLoadObject でロードされたクラスに対して呼び出されます。
VirtualUserCleanup メソッド   このメソッドは、DotNetUnitTestFreeObject で解放されたクラスに対して呼び出されます。
TestCleanup メソッド   このメソッドは、DotNetUnitTestCallMethod でメソッドが呼び出された後に呼び出されます。
TestInitialize メソッド   このメソッドは、DotNetUnitTestCallMethod でメソッドが呼び出される前に呼び出されます。
TestIgnore メソッド   この属性が適用されたメソッドは、DotNetUnitTestCallMethod で呼び出されません。
TestException メソッド 例外タイプ

追加ログ メッセージ

通常、例外を送出するメソッドは失敗したものとみなされます。 メソッドで例外を送出する場合は、TestException 属性を使用して、このメソッドで例外が送出されることを Silk Performer に通知することができます。