ハートコア株式会社
HeartCore Robo ドキュメント一覧
GUIリファレンス
2023-01-04

HeartCore Robo コードテンプレート

コンテンツ
  1. 概要
  2. コードテンプレートデータファイル
  3. コードテンプレートウィザード
  4. コードテンプレートエディタ

1. 概要

コードテンプレートフレームワークを使用すると、再利用可能なコードの挿入によりテストスクリプト作成を高速化できます (「コードテンプレート」と呼ばれます)。コードテンプレートのサポートは、次の3つの部分で構成されます。
  1. コードテンプレートデータファイル
  2. コードテンプレートウィザード
  3. コードテンプレートエディタ

2. コードテンプレートデータファイル

コードテンプレートは、Javaプロパティーフォーマット準拠のプレーンテキストファイルに格納されます。HeartCore Roboは、バイナリ内にパックされ、自動的に読み込まれた一連のデフォルトコードテンプレートとともに配布されています。

[コードテンプレートエディタ]ウィンドウを使用してコードテンプレートをカスタム変更すると、そのコードはRobotCodeTemplates.propertiesという外部ファイルに保存され、ユーザのホームフォルダに保存されます。 その後、ファイルを別の環境にコピーしてコードテンプレートエディタの [インポート]ボタンを使用しインポートすることができます。


3. コードテンプレートウィザード

コードテンプレートウィザードでは、コードテンプレートを選択し、スクリプトエディタの現在の位置に挿入することができます。 ウィザードは、リストモードメニューモードの2つのモードで表示できます。


メニューモード

このモードは、空のエディタ行にフルラインテンプレートを挿入するのに適しています。[コードテンプレートウィザード]メニューを開くには、次のいずれかの操作を行います。
コードテンプレートウィザードのメニュー


テンプレートメニューは、1つまたは複数のカテゴリに1つのコードテンプレートが存在するカテゴリ別にまとめられています。各テンプレートは、固有のショートカットキーによって識別され、リストモードでのテンプレートの選択を迅速に行えます。テンプレートショートカットキーは通常、カテゴリを識別する文字で始まります。たとえば、すべてのIf / else文テンプレートは「i」という文字で始まります。

リストモード

使用可能なすべてのテンプレートのリストの形式でコードテンプレートウィザード
を開くには、スクリプトエディタでCtrl + Iを押します。リストは次のように操作できます。

コードテンプレートウィザード
  1. リスト内を移動するには、矢印キーまたはマウスホイールを使用します。また、特定のテンプレートまたはカテゴリにジャンプするために、ショートカットキーまたはその部分「ifep」など)を入力することもできます。
  2. 選択したコードテンプレートをエディタに挿入するには、Enterキーを押すか、マウスでクリックします。
  3. ウィザードをキャンセルするには、ESCキーを押すか、テンプレートウィンドウの外にマウスポインタを移動します。




4.コードテンプレートエディタ

コードテンプレートエディタは、カスタムコードテンプレートを作成することができます。エディタウィンドウを開くには、次のいずれかの操作を行います。

コードテンプレートエディタ 標準では、エディタが含むすべての利用可能なコードテンプレートリストを表示します。これを変更するには[標準コードテンプレートを表示]チェックボックスをオフにします。

内部テンプレート自体は変更できませんが、コピーボタンを使用して別のテンプレートとして再保存し編集することができます。

[インポート]ボタンを使用すると、コードテンプレートデータファイルの章で説明しているように、データファイルからコードテンプレートをインポートできます。変更を保存するには、OKボタンでウィンドウを閉じる必要があります。

新しいテンプレートを作成するには、[新規]ボタンを選択します。または、[コピー]ボタンを選択して、選択したテンプレートのコピーを作成します。どちらも次のようにテンプレートエディタを開きます。

コードテンプレートエディタ
  1. ショートカットキーは、任意のテンプレート識別子です。テンプレートを適切に整理するために、最初の文字を、選択したテンプレートカテゴリの典型的な文字に設定することをお勧めします。このシステムによりコードテンプレートウィザードリストモードで簡単にテンプレートを識別することができます。
  2. コード内容の説明がウィザードで表示されます。短く記載しましょう。
  3. [スタンドアロンテンプレート]チェックボックスは、テンプレートのエディタへの挿入方法を制御します。チェックボックスがオンの場合、テンプレートは常に新しい行に作成されます。チェックボックスがオフの場合、テンプレートは現在のキャレット位置に挿入されます。このモードは、既存のコマンドおよび/またはメソッド呼び出しに挿入される典型的な小さな "単語"テンプレート、例えばパラメータ値や頻繁に使用される変数の呼び出しに適しています。
  4. テンプレートカテゴリのリストは、特定の機能カテゴリにテンプレートを関連付けることができます。各テンプレートには少なくとも1つのカテゴリが必要です。新しいカテゴリを作成するには、コードテンプレートボタンを使用します。既存のカスタムカテゴリを削除するには、コードテンプレートボタンを選択します。デフォルトのカテゴリは変更または削除できません。

  5. インラインテンプレート([ スタンドアロンテンプレート]チェックボックスはオフ)は、それらが表す1つ以上の値タイプを宣言できます。例えば、数字が予想されるところで使用されることを意図したコードテンプレートは、INTおよび/またはFLOATタイプとして宣言する場合があります。少なくとも1つの値型を宣言するテンプレートは、同じ型のパラメータに対して、コマンド/メソッド呼び出しプロパティウィンドウのカスタム入力モードで表示されます。

    サポートされている値の種類のリスト:

    値の種類
    説明
    BOOLEAN
    ブール値の型( 'true'または 'false')。これは、チェックボックスまたはラジオボタンとしてGUIに表示されます。
    COLOR
    色。デフォルトの色のセットとカスタムのボタンを追加できるボタンで、ドロップダウンとしてGUIに表示されます。
    COLOR_FROM_IMAGE
    色。GUIのドロップダウンとして、デフォルトの色のセットと、カスタムの色を追加したり、デスクトップ画面から色を選択したりするためのボタンが表示されます。
    COLOR_LIST
    色のリスト。
    DIRECTORY
    ディレクトリ。GUIは、この値のタイプを、編集可能なテキストフィールドとして表示し、ボタンを使用してローカルファイルシステムからディレクトリを選択できるようにします。
    FILE
    ファイル。GUIは、この値のタイプを、編集可能なテキストフィールドとして表示し、ボタンを使用してローカルファイルシステムからファイルを選択できるようにします。
    FILELIST
    ファイルのリスト。
    FLOAT
    浮動小数点数。これは、GUIに数値フィールドとして表示されます。 
    INT
    整数です。これは、GUIに数値フィールドとして表示されます。 
    INT_DISPLAYED_AS_BOOLEAN
    ブール値「false」(0の値)または「true」(その他の値)として解釈される整数。
    KEYSTROKE
    キーストローク(例:「Ctrl + C」)。GUIには、レコードとキーボードツール のボタンがある編集可能なテキストフィールドとして表示されます。 
    PASSWORD
    パスワード。これは、GUIにパスワードフィールドとして表示されます。 
    POINT
    x座標とy座標で定義される点(位置)。GUIには、数字フィールドのペアとして、デスクトップ画面からポイントを選択できるボタンが表示されます。 
    RECTANGLE
    x、y、height、およびwidth座標で定義される矩形。GUIに4つの数字フィールドのセットとして表示され、デスクトップ画面から長方形を選択できるボタンが表示されます。 
    REGEXP
    java.util.regex.Pattern準拠の正規表現。GUIには編集可能なテキストフィールドとして表示され、要素からの式を作成するためのボタンがあります。
    STRING
    文字列。GUIには、編集可能なテキストフィールドまたはドロップダウンとして表示されます。
    STRINGLIST
    文字列のリスト。
    STRING_WITH_ACTION
    文字列。GUIには編集可能なテキストフィールドとカスタム値セレクタを実装するためのボタンが表示されます。
    TEXT
    文章。編集可能なテキスト領域(複数行のフィールド)としてGUIに表示されます。
    TIME_INTERVAL
    "10s"(10秒)などの時間間隔。
  6. サポートされている各テストスクリプト形式のTPR(* .tpr)とJava(* .java)のコードエディタがあります。有効なテンプレートでは、少なくとも1つの形式または両方の形式のコードを提供する必要があります。
  7. オプションの[カスタム説明]フィールドでは、デフォルトの説明(2)を特定の形式で上書きすることができます。入力されると、関連するテストスクリプト形式で開かれたコードテンプレートウィザードによって説明が表示されます。
  8. テンプレートコードは自動的に作成される任意のインデント(先頭のスペース)無しでに提供する必要があります。コードは、静的(プレーンテキスト)またはパラメータ付きの動的のいずれかです。サポートされているマーク(パラメータ)のリストは次のとおりです。

    パラメータ
    説明
    ${dot}
    テンプレートコードが挿入された後で、スクリプトエディタにドット(キャレット)を配置する位置をマークします。
    ${mark}と一緒に使用すると、テキスト選択の終了を定義します。
    このマークを挿入するには、必要に応じエディタ下のキャレットをマークボタンを使用します。
    $ {mark}
    テンプレートコードが挿入された後にスクリプトエディタで選択(強調表示)するテキストの先頭をマークします。
    これは、${dot}と組み合わせて使用​​する必要があります。
    このマークを挿入するには、必要に応じエディタ下にある選択範囲をマークボタンを使用します。
    テストスクリプトにテンプレートを挿入した直後に書き換えられると予想される値または式を選択するために、テキスト選択をオプションで使用することができます。
    $ {var <N>:name1; ..; nameM}
    $ {var <N>}
    任意の変数名を作成する場所をマークします。
    <N>式は、1から始まる連番数値の必要があります。たとえばvar1var2
    N番目の変数の最初のマークには、コロン(:)とセミコロンで区切られた1つ以上の変数名が並びます。
    このマークは、既存のテストスクリプトコードと競合しない方法で、1つ以上の任意の変数を作成する必要があることをテンプレートが指定できるようにします。
    テンプレートがスクリプトに挿入されると、フレームワークは使用する変数のリストを取得し、まだ使用されていない固有の変数名をテンプレートに取り込みます。
    優先変数名は接頭辞として使用され、必要に応じて通常の番号が末尾に付加されます。

    例えば、1から10までループするfor()文を作成する単純なテンプレートを考えてみましょう。

    for (${var1:i}=0; {${var1}}<10; ${var1}={${var1}}+1) {
    }

    そのようなテンプレートがすでに別の目的のために 'i'変数を使用しているテストスクリプトに挿入された場合、フレームワークは一意の変数名を 'i2'として作成し、次のようにテンプレートを挿入します。

    for (i2=0; {i2}<10; i2={i2}+1) {
    }