API ユーザ・コード・ファイルのデバッグ - 実習
関連:ユーザ・コード・ファイル
この実習では,API テストで提供されている UFT One のデバッグ機能を使って API ユーザ・コード・ファイルを作成およびデバッグします。
注: この使用例に関連するタスクについては,テスト,コンポーネント,関数ライブラリ,またはユーザ・コード・ファイルのデバッグを参照してください。
テスト・ステップを作成する
-
API テストを作成します。
-
[ツールボックス]表示枠の[数学]セクションで,[加算]アクティビティ,[乗算]アクティビティ,[カスタム コード]アクティビティをキャンバスにドラッグします。
数値演算ステップのプロパティを設定する
-
[入力/チェックポイント]タブでの[入力]表示枠で,[加算]演算の値を入力します。
-
A の[値]カラムに 10 と入力します。
-
B の[値]カラムに 6 と入力します。
-
-
[入力/チェックポイント]タブに,[乗算]演算の値を入力します。
-
A の[値]カラムに 2 と入力します。
- B の[値]カラムに 4 と入力します。
-
カスタム・コード・アクティビティのパラメータを作成する
-
[入力/出力プロパティ/パラメータの編集]ダイアログ・ボックス(API テスト)で,入力パラメータの詳細を入力します。
-
[名前]フィールドに AddResult と入力します。
-
[タイプ]フィールドのドロップダウン・リストから[String]を選択します(選択されていない場合)。
[入力/チェックポイント]タブの[入力]表示枠に,AddResult という名前の入力プロパティが表示されます。
-
-
さらに,MulResult という名前で入力パラメータを作成します。
-
[名前]フィールドに MulResult と入力します。
-
[タイプ]フィールドのドロップダウン・リストから[String]を選択します(選択されていない場合)。
[入力/チェックポイント]タブの[入力]表示枠に,MulResult という名前の入力プロパティが表示されます。
-
-
[追加]ボタンをクリックし,[出力プロパティの追加]を選択します。
-
出力パラメータの詳細を入力します。
-
[名前]フィールドに Result と入力します。
-
[タイプ]フィールドのドロップダウン・リストから[Decimal]を選択します。
-
-
[チェックポイント]表示枠に 128 と入力します。
カスタム・コード・アクティビティを既存のステップにリンクする
-
[リンク元の選択]ダイアログ・ボックス(API テスト)で,[AddActivity]ステップを選択します。右表示枠で,[結果]を選択して[OK]をクリックします。
リンク元である Step.OutputProperties.AddActivity<番号>.Result が[AddResult]行に表示されます。
-
このダイアログで,[乗算]ステップを選択します。右表示枠で,[結果]を選択して[OK]をクリックします。
リンク元である Step.OutputProperties.MultiplyActivity<番号>.Result が[MulResult]行に表示されます。
カスタム・コード・アクティビティのイベントを作成する
-
[プロパティ]表示枠で,ドロップダウン・リストから[カスタム コード]アクティビティを選択します。キャンバスで[カスタム コード]アクティビティをクリックしても選択できます。
-
[プロパティ]表示枠で,[イベント]タブをクリックします。
-
[イベント]タブ([プロパティ]表示枠 - API テスト)で,ExecuteEvent と AfterExecuteStepEvent で使用する標準設定のハンドラを作成します。これにより,CodeActivity<番号>_OnExecuteEvent と CodeActivity<番号>_OnAfterExecuteEvent という 2 つのイベントが TestUserCode.cs ファイルに追加されます。
-
TestUserCode.cs ファイル内の CodeActivity_OnExecuteEvent で,次のテキストを入力します。
decimal AddResult = AddActivity.Result; decimal MulResult = MultiplyActivity.Result; CodeActivity<番号>.Output.Result = AddResult*MulResult;
-
このメソッドの最後の行にブレークポイントを入力します。
-
TestUserCode.cs ファイル内の CodeActivity<番号>_OnAfterExecuteStepEvent で,次のテキストを入力します。
decimal result = CodeActivity<番号>.Output.Result;
-
このメソッドの最後の行にブレークポイントを入力します。
-
テストを保存します。
テストを実行する
[実行]>[実行]を選択するか,F5 キーを押します。
最初のブレークポイントで変数の値を確認する
-
テストが最初のブレークポイントで停止したら,[表示]>[デバッグ]>[ローカル変数]を選択して,[ローカル変数]表示枠を開きます。
-
[ローカル変数]表示枠には,[加算]と[乗算]アクティビティの現在値が表示されます。AddActivity の現在値は 16,MultiplyActivity の現在値は 8 です。
行のノードを展開すると,テスト実行で使用されているさまざまな項目の値を参照できます。
[ウォッチ]表示枠に変数を追加する
-
[TestUsercode.cs]タブで,AddResult というテキストを強調表示します。
-
[表示]>[デバッグ]>[ウォッチ]を選択して[ウォッチ]表示枠を開きます。
-
[ウォッチ]表示枠で,[新しいウォッチ式の追加]ボタンをクリックして Add Result と入力します。
AddResult の式の行には,値に 16,タイプに[10 進数]と表示されます。
- [新しいウォッチ式の追加]ボタンをもう一度クリックし,MulResult 変数を[ウォッチ]表示枠に追加します。この表示枠には,MulResult という式が値 8,タイプ[10 進数]と表示されます。
次のブレークポイントで変数の値を確認する
-
[実行]>[続行]を選択するか,F5 キーを押して実行セッションを続行します。
-
実行セッションが次のブレークポイントで停止したら,CodeActivity<番号>.Output.Result というテキストを強調表示して[ウォッチ]表示枠に追加します。
表示枠の変数の値は,128 と表示されます。
前の手順で[ウォッチ]表示枠に AddResult と MulResult を追加しましたが,未定義なので[不正な式]と表示されます。この値は存在し,現在のイベントに関連付けられています。
-
[ローカル変数]タブをクリックします。Result の行の値は 128 と表示されています。これは,前の手順で入力したカスタム・コードで,Result は CodeActivity6.Output.Result に等しく,これが AddResult*MulResult に等しいことを指定したためです。
さらに,実行セッションが一時停止した状態でエディタ内の変数名にカーソルを置くと,ツールヒントが開き,変数とプロパティの現在値が表示されます。
-
[実行]>[続行]を選択して実行セッションを最後まで実行し,実行結果を表示します。