オントロジーの構築ファンクション基礎的なTypeScript関数をデバッグする

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

関数をデバッグする

以下のドキュメントは TypeScript v1 関数に固有のものです。オントロジー SDK のサポートや設定可能なリソースリクエストなど、より充実した機能を利用するには、TypeScript v2 への移行を推奨します。

関数を作成する際、コードの正確性やパフォーマンスの問題を修正するために、実行時の状態を確認する必要が生じることがあります。以下では、そのために使用できる機能を紹介します。これらのデバッグ手順は、ユニットテストにも適用されます。

開発用デバッガー

Code Repositories のデバッガーツールを使用すると、実行中のユニットテストの動作を確認できます。ブレークポイントを設定してユニットテストの実行を一時停止し、変数を確認したり、関数やライブラリを理解したりできます。

デバッガーの概要パネル。

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

デバッガーを使用するには、ブレークポイントを設定する必要があります。ブレークポイントは、デバッガーがコードの実行を一時停止する位置を指定し、その時点の変数を操作できるようにします。

コードの各行の余白にある薄い赤色の点を選択して、ブレークポイントを設定します。デバッガーは、指定した行が実行される_前_に実行を一時停止します。必要に応じて、複数のファイルにわたって複数のブレークポイントを設定できます。

デバッガーのブレークポイント。

デバッガーを実行する

ライブプレビュー中

コードにブレークポイントを追加したら、関数パネルにある実行とデバッグを選択します。

ライブプレビューのデバッガーレイアウト。

テスト中

コードにブレークポイントを追加したら、コードエディターのユニットテストの横にあるテストを実行を選択します。

テストのデバッガーレイアウト。

デバッガーを使用する

デバッガーが起動すると、デバッガーパネルが開き、最初に到達したブレークポイントで一時停止します。デバッガーの左側のバーでは、コード内を移動したり、ブレークポイントを外したり、デバッグセッションを完了または停止したりできます。

コード内を移動すると、次に実行されるコード行がエディターで強調表示されます。次のボタンを使用して、デバッガーを進めます。

デバッガーの操作ボタン。

  1. 実行を再開: 完了するまで、または次のブレークポイントで一時停止するまで実行を続けます。
  2. ステップオーバー: 内部の関数に入らずにコード行を実行します。
  3. ステップイン: そのコード行に内部の関数がある場合は、その関数内に移動します。
  4. ステップアウト: 内部の関数から抜けて、デバッガーを進めます。
  5. 実行を停止: デバッガーを完全に停止します。
  6. ブレークポイントを外す: リポジトリ内のすべてのブレークポイントを外し、実行を一時停止せずにユニットテストを実行します。
  7. 設定: デバッガーのオン/オフを切り替えます(ブレークポイントはクリアされません)。
  8. ドキュメント: ドキュメントを開いて詳細を確認します。

変数を確認する

デバッガーの実行中は、コードの実行位置における変数とデータを確認できます。

フレーム

フレームは、デバッガーがアクティブになっている関数、またはブレークポイントが存在する関数を表します。各フレームには、関数名に続いて、その関数が記述されているファイル名と行番号が表示されます。

フレームを選択して、そのフレーム内の変数を確認し、そのフレームに対してコンソールコマンドを実行します。

変数

変数セクションには、トランスフォームの実行中にローカル変数とグローバル変数に格納されている値が表示されます。

デバッガーの変数。

コンソール

コンソールでは、デバッガーの実行中に JavaScript のコンソールコマンドを使用してデータを操作できます。コンソールは、選択したフレームのコンテキスト内で動作するため、別のフレームのローカル変数に対してコマンドを実行しようとするとエラーになります。

デバッガーのコンソール。

コンソールログ

Functions は、デバッグのために実行中のコンソールログ出力をサポートしています。ログを出力するには、console.log コマンドを使用します。例:

Copied!
1 2 3 4 5 6 7 @Function() public testConsoleLogging(n: Integer): Integer { for (let i = 0; i < n; i++) { console.log(`Iteration ${i}`); } return n; }

このようにコンソールログを使用すると、コードの正確性に関する問題のデバッグに役立ちます。また、コンソールログを追加して、コード内のパフォーマンスのボトルネックを特定することもできます。リンクをたどるロジックのパフォーマンスを改善する方法については、パフォーマンスの最適化のガイドを参照してください。

テスト中

Authoring のテストヘルパーを使用して関数を実行すると、コンソールログが取得され、以下のように表示されます。

テストのコンソールログ。

ライブプレビュー中

Authoring の関数ヘルパーを使用して関数を実行すると、コンソールログが取得され、タイムスタンプとともに以下のように表示されます。

ライブプレビューのコンソールログ。