スクリプトのテストおよびデバッグ

Analytics スクリプト エディターには、Analytics スクリプトのテストやデバッグに役立つ機能がいくつか備わっています:

  • スクリプト内のカーソル位置からスクリプトを実行する
  • ブレークポイントを設定して、特定の行でスクリプトの実行を一時停止する
  • スクリプトを一度に 1 行ずつステップ実行する
  • スクリプトエラーを分離する
  • 関連付けられた[変数]タブで、変数の作成や、変数への値の割り当てをリアルタイムで追跡する

これらの機能は、スクリプトがスクリプト エディターで開いていればいつでも利用できます。開いているスクリプトが 1 つ以上のサブスクリプトを呼び出す場合、それらのサブスクリプトは呼び出されたときに自動的に開かれます。

スクリプトをステップ モードまたはブレーク ポイント モードで実行している間、スクリプトは読み取り専用となり、Analytics の他の機能はコマンド ラインも含め、ほとんどが無効になります。スクリプト エラーが発生した場合は、エラーを修復できるように、スクリプトは編集可能となります。

スクリプトを実行すると、その実行方法に関係なく、開いているすべてのスクリプトが自動的に保存されます。

メモ

実行またはステップ実行が完了した時点でテーブルが開いたままである場合は、Analytics の表示領域はスクリプト エディターから、ビュータブで開いているテーブルの表示へ自動的に切り替わります。スクリプトをテストまたはデバッグしている間は、そのままスクリプト エディターが表示され続けるようにしたい場合は、スクリプトの最後に一時的に CLOSE コマンドを含めることができます。

カーソルからスクリプトを実行する

スクリプトの先頭からスクリプトの実行またはステップ実行をしたくない場合は、スクリプトの実行を開始したい行にカーソルを位置付けてから、右クリックして[カーソルから実行]または[カーソルからステップ]を選択します。カーソル位置からスクリプトを実行またはステップ実行すると、スクリプトの特定の部分をテストでき、スクリプト全体を不必要に実行することで時間と労力が無駄に費やされることを避けられます。

スクリプトがいったん実行されたら、[カーソルから実行]と[カーソルからステップ]は使用できません。これらのオプションは、スクリプトの実行を開始する場合と、スクリプトエラーが発生した後またはエラーを修正した後で、スクリプトを再開する場合にのみ使用できます。

メモ

カーソルからのスクリプトの実行を使用してスクリプトの一部を回避する場合、そのセクションに後続のセクションで必要な前提条件となる操作が含まれている場合は、後続のセクションが正しく実行される見込みはありません。

ブレークポイントを設定する

Analytics スクリプト内に 1 つ以上のブレークポイントを設定して、特定の行でスクリプトの実行を一時停止させることができます。ブレークポイントによって、スクリプト全体を実行する必要なく、スクリプトの一部分をテストできるようになります。また、スクリプト内の特定の時点における Analytics プロジェクトの状態を調べることが可能になります。スクリプトのより複雑、より重要な部分を開発およびテストしているとき、ブレークポイントは有用なツールとなるでしょう。

ブレークポイントからスクリプトを再起動する

ブレークポイントからスクリプトを再起動する場合、以下のオプションがあります:

  • ブレークポイントからスクリプトをステップ実行する
  • スクリプトを挿入した場合は次のブレークポイントまでスクリプトを実行する
  • スクリプトを最後まで実行する
  • スクリプトを終了する

空白行とコメント

ブレークポイントを空白行またはコメント行に設置した場合、スクリプトはその空白行またはコメント行の後にある最初のスクリプト行で一時停止します。

ブレークポイントの持続性

  • ブレークポイントは、そのスクリプトを閉じても、スクリプト内に保持されます。
  • スクリプト エディター内で右クリックして[すべてのブレークポイントをクリア]を選択すると、Analytics プロジェクト内のすべてのスクリプトからすべてのブレークポイントをいつでも削除することができます。
  • すべてのブレークポイントは、Analytics を閉じるときに、プロジェクト内のすべてのスクリプトから自動的に削除されます。

手順

スクリプトをステップ実行する

一度に 1 行ずつステップ実行することで、Analytics スクリプトを実行できます。スクリプトを実行すると、制御された方法で実行をテストし、あらゆるエラーをそれが発生する正確な行で見つけることができます。

ステップ矢印

緑色の矢印スクリプトをステップ実行しているとき、緑色のステップ矢印 が実行されようとしているスクリプト内の行を示します。矢印が行を越えて 1 ステップ進んだら、その行は実行済みです。

赤色の矢印 行に無効なコマンド構文や何かほかの種類の誤りがある場合、スクリプトは停止し、ステップ矢印は赤色 に変わって進まなくなり、誤っている場所が強調表示されます。スクリプトは、ステップ実行している間は読み取り専用になりますが、エラーが発生した場合は、エラーを修復できるように編集可能となります。

手順

スクリプト エラーを分離する

スクリプトが失敗する原因となるエラーが発生するスクリプトを Analytics で実行するたびに、エラーが発生する行はスクリプト エディター内で自動的に強調表示されます。スクリプト エディターが開いていない場合は、自動的に開きます。このスクリプトエラーの識別は、スクリプトをスクリプト エディターで直接実行したか、[ツール]メニューから、コマンドラインから、あるいはナビゲーター内でスクリプトを右クリックして実行したかに関係なく発生します。

この自動エラー識別は強力なトラブルシューティング機能で、特に、深く入れ子になっているサブスクリプトで発生するエラーにとって有用です。スクリプトを記述できる Analytics ユーザーであれば、エラーに遭遇したときに、そのエラーを直接修正することができます。スクリプト記述に慣れていないユーザーは、エラーが発生したスクリプトの名前と行番号を記録しておけば、スクリプトの問題について助けを求めることが容易になります。

[変数]タブを使用する

ナビゲーターの[変数]タブでは、変数の作成や、変数への値の割り当てをリアルタイムで追跡します。読み取り専用タブには、Analytics プロジェクトのすべての変数の名前、データ型、現在の値が表示されます。名前はアルファベット順に表示されます。

スクリプトを 1 行ずつ進むと、スクリプトで定義された変数またはシステムで生成された変数が作成時に[変数]タブに表示されます。変数がすでに存在する場合は、スクリプト ロジックに基づいて値が動的に更新されます。(スクリプト エディターで、[ステップ ]オプションを使用してスクリプトを進めます。)

スクリプト変数で発生している正確な変更を発生時に監視できるのは、重要な診断ツールです。この機能では、スクリプト構文の調査だけでは検出が難しいスクリプト エラーをピンポイントで特定できます。

スクリプトを実行する場合、変数に関連するすべての変更は、ブレーク ポイントに達したとき、またはスクリプトが完了したときに[変数]タブに表示されます。

複数行のコマンド

GROUP、LOOP、または DEFINE FIELD ... COMPUTED などの複数行コマンドの内容をステップ実行することはできません。スクリプトをステップモードで実行していて複数行コマンドに遭遇した場合は、そのコマンドの内容全体が実行され、ステップ矢印は、複数行コマンドの直後にある行に位置付けられます。

ブレークポイントは、複数行コマンドの内部では認識されません。複数行コマンドの内部にブレークポイントを設定した場合、スクリプトは、複数行コマンドの直後にある行で一時停止されます。

ヒント

複数行コマンドの内容部分は、囲んでいるコマンド構文なしで内容を別のスクリプトへコピーすることによって、テストできるかもしれません。

PASSWORD アナリティクス タグを含むアナリティクスのテスト

スクリプトのアナリティクス ヘッダーに PASSWORD タグがある場合に、アナリティクス スクリプトを Analytics で実行して、テストすると、Analytics によって自動的に PASSWORD コマンドが生成されるため、ユーザーは該当するパスワードを入力するように求められます。この自動生成されたコマンドにより、テスト目的でアナリティクス スクリプトのスクリプト部で PASSWORD コマンドを挿入し、アナリティクス スクリプトをロボットにアップロードする前にそれを削除する必要がありません。自動生成された PASSWORD コマンドは、パスワード値なしでログに保存されます。

パスワード値は、Analytics でアナリティクス スクリプトを実行するときに保存されるため、カーソル位置からのアナリティクスの実行またはステップなど、スクリプトを実行するたびにパスワードを指定する必要があります。

アナリティクス スクリプトはアナリティクス ヘッダーがある標準のスクリプトであり、Diligent One プラットフォームのロボット アプリで実行できます。