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

HeartCore Roboのプロジェクトについて

内容

  1. 概要
  2. プロジェクトとテストスクリプト
  3. リリース2.xからの移行
  4. プロジェクトビュー


1. 概要

プロジェクトのサポートは、HeartCore Robo v3以降で導入されました。「プロジェクト」とは、テストスクリプト、テンプレートイメージ、テストデータ、およびテスト結果を記録する場所として機能する、事前定義されたレイアウトのディレクトリです。

プロジェクトディレクトリの構造は、例えば次のように構成されています。

<プロジェクトまでのパス>\MyAutomation
     
プロジェクト MyAutomation ホーム(プロジェクトフォルダ名がプロジェクト名となります).

classes

コンパイル済みJavaクラス(* .classファイル)のフォルダ

reports
テストレポート用のフォルダ(結果)

schedules
スケジュールファイルのフォルダ(v4.0以降)

src
Javaテストスクリプトおよびその他のJavaソースコード用のフォルダ(* .java)

templates
テンプレート画像ファイルとコレクション用のフォルダ

tpr

TPRテストスクリプト用のフォルダ(* .tpr)


tprproject.xml

HeartCore Robo Desktopプロジェクトディスクリプタ。

プロジェクトディレクトリは自己完結するように設計されています。スクリプトはこのフォルダの外にある他のリソースへの相対パスを参照しない限りにおいて、移動、コピー、および名前変更を安全に行うことができます。そのような参照は、プロジェクト名または場所の変更後に手動で修正する必要があります。
ファイルレイアウトは固定されており、カスタマイズすることはできません。ファイルリソースは他の場所に置くことができますが、GUIのプロジェクトビューには表示されません。
プロジェクト構造は、Apache NetbeansなどのサードパーティのJava統合開発環境(IDE)と互換性があるように設計されています。これにより、IDEおよびHeartCore RoboでJavaソースコードを同時に処理することができます。詳細は、「Javaテストスクリプトの作成(英語ページ)」ガイドを参照してください。


2.プロジェクトとテストスクリプト

各スクリプトのコンパイルまたは実行は、スクリプトが属するプロジェクトを識別する検出処理を実行します。このような動的パス構成を使用すると、スクリプトI/O設定を修正することなく、プロジェクト間でスクリプトとその依存関係 (テンプレートイメージとデータ) をコピーまたは移動できます。この利点は、テンプレートと出力パスをプロジェクトに設定するスクリプトをテストするためだけに自動で適用できることです (以下のオプションを参照)。各プロジェクトパスは、設定された変数を使用してテストスクリプト内で利用できます:

変数
説明
{_PROJECT_DIR}
プロジェクトのホームディレクトリ
{_PROJECT_TEMPLATE_DIR}
プロジェクトテンプレートディレクトリ(<project_home>/templates
_PROJECT_REPORT_DIR プロジェクトレポートホームディレクトリ(<project_home>/reports
_PROJECT_REPORT_UNIQUE_DIR スクリプト実行ごとに一意のプロジェクトレポート(出力)パスを作成する動的変数。
このパスは、フォーマットが<project_home>/reports/<script_file_name>_<time_stamp>.<id>
タイムスタンプが1970年1月1日から経過したミリ秒での実行(コンパイル)開始時刻、
IDが所有コンテキストの一意の識別子からなる形式です。

スクリプトでは有効な出力とテンプレートのパスを指定できますが、テスト結果やテンプレートイメージをGUIで快適に参照できるようにするため、2つの推奨オプションがあります。以下のコードをスクリプトの先頭に挿入することでパスを手動で設定することができます。または、GUIのパスツールを使用します。

オプション1
バージョン4.0以降:

スクリプト内のパス設定を省略します。出力パスは、プロジェクト固有の標準出力フォルダになり、同じスクリプトを繰り返し実行しても結果が異なる場所に保存されます(結果の上書きが行われません)。また、プロジェクトビューの結果ブランチで、スクリプト名と日付で結果を階層的に整理できるようになります。

バージョン3.x:

v3のテンプレートと出力パスは、既定でユーザーのホームフォルダに設定され、手動で構成する必要があります。テンプレートパスをプロジェクト1に設定します。同じスクリプトの繰り返し実行によって結果が異なる場所に保存されるように、出力パス一意のプロジェクト出力フォルダに設定します (結果の上書きは行われません)。また、テスト結果をプロジェクトビューのブランチに配置してテストスクリプトの名前と日付を階層的に編成します。これは、新しいスクリプトに適用される既定の設定です。

スクリプト形式
パス設定コマンド
TPR
Var REPORT_DIR="{_PROJECT_REPORT_UNIQUE_DIR}"
Var TEMPLATE_DIR="{_PROJECT_TEMPLATE_DIR}"
Java
setOutputDir(getVariableAsString("_PROJECT_REPORT_UNIQUE_DIR"));
setTemplateDir(getVariableAsString("_PROJECT_TEMPLATE_DIR"));

オプション2

テンプレートパスをプロジェクトに設定します。プロジェクトレポートホームの下にある静的フォルダ出力パスを設定します。これにより、スクリプトは実行ごとにテスト結果を上書きします。このようなパスはプロジェクトビューでもよく認識されます。
スクリプト形式
パス設定コマンド
TPR
Var _REPORT_DIR="{_PROJECT_REPORT_DIR}\mytestscript"
Var _TEMPLATE_DIR="{_PROJECT_TEMPLATE_DIR}"
Java
setOutputDir(getVariableAsString("_PROJECT_REPORT_DIR")+java.io.File.separator+"mytestscript");
setTemplateDir(getVariableAsString("_PROJECT_TEMPLATE_DIR"));

v4.0以降では標準でプロジェクトテンプレートディレクトリ設定になるため、テンプレートパスの設定を省略することができます。

3.リリース2.xからの移行

テストスクリプト、テンプレートイメージ、およびテストデータを2.xリリースまたはロボットプロジェクト外のファイルレイアウトから移行するには:
  1. プロジェクトを作成します。
  2. すべてのテンプレートイメージとイメージコレクション<project_home>/templates フォルダに移動またはコピーします。これは、スクリプトがフル(絶対)ファイルパスで参照するイメージには当てはまりません。プロジェクトビューでそのようなイメージを表示するには、それらをプロジェクトテンプレートフォルダに移動し、相対パス(名前)で参照するようにスクリプトを更新します。
  3. すべてのTPRテストスクリプトを<project_home>/tprフォルダに移動またはコピーします。
  4. すべてのJavaテストスクリプトやJavaパッケージをその<project_home>/src フォルダに移動またはコピーします。
  5. 前の章で説明したように、各スクリプトを修正してテンプレートパスをプロジェクトに設定します。テスト結果(レポート)をプロジェクトビューで管理する場合は、出力パスを推奨プロジェクトのものに変更してください。両方のパスは、Pathsコンポーネント(以前のv2.xの[設定 ]タブ)を数回クリックするだけで、快適に更新できます。
  6. 相対的な方法でスクリプトが他のファイルリソース(Excelシート、プレーンテキストファイルなど)を参照している場合、それらを正しく参照するようにスクリプトを更新します。これらのリソースをプロジェクトフォルダに移動し、_PROJECT_DIR変数を使用してスクリプトを参照するようにしてください。たとえば、プロジェクトのホームフォルダにあるExcelリソースmydata.xlsを開くには、次のように入力します。
TPRフォーマット: Excel "open" file="{_PROJECT_DIR}\mydata.xls"
Java形式:   excelOpen( new File(getVariableAsString("_PROJECT_DIR"), "mydata.xls"),(String) null );


4.プロジェクトビュー

プロジェクトビューは、現在のプロジェクトのリソースがツリー状に表示されます。新しいプロジェクト作成するには、次のいずれかの操作を行います。

その中に

プロジェクトを開くと、プロジェクトビューコンポーネントには、現在開いているプロジェクトの内容を表示します。これは、HeartCore Roboのメインウィンドウの左上隅にある[プロジェクト]タブを選択することでその下に表示されるようになっています。このビューは、ノードの大部分がファイル、ディレクトリ、または属性の論理的な表示状態を表すツリー状になっています。

プロジェクトビュー
  1. ルートノードは、プロジェクト名(プロジェクトディレクトリ名)が表示されます。プロジェクト固有のアクションメニューを表示するには、それを右クリックします。
  2. テストスクリプトブランチは、テストスクリプトの構成概要を表示します。tpr/(TPRスクリプト)とsrc/(Javaテストスクリプト)という既存のスクリプトソースディレクトリを照合して表示されています。テストスクリプトノードをダブルクリックすると、スクリプトエディタでそのスクリプトファイルを開きます。
  3. コンポーネントイメージブランチは、利用可能なテンプレート画像と画像コレクションを示します。ブランチまたは任意のコレクション(画像ディレクトリ)を右クリックすると、コンポーネントキャプチャ機能を使用して新しい画像をキャプチャできるメニューが開きます。イメージノードをダブルクリックすると、テンプレート画像エディタでイメージが開きます。
  4. ワークアイテム(v7以降)(スケジューラ、v4以降)ブランチはスケジュールを管理します。詳細は、ワークアイテム(スケジュール)トピックを参照ください。
  5. [テスト結果] ノードには、実行されたテストスクリプトによって生成されたテストレポートとログの概要が表示<されます。一意のプロジェクトレポートパスを使用するテストスクリプトの結果は、レポートがテストスクリプトと実行日時によってソートされる論理ツリーとして表示されます。ビューを物理的なものに強制し、生の結果フォルダを表示するには、テスト結果ノードを右クリックし、ファイルビュー ->フォルダ/ファイルフラットビューチェックボックスを選択します。



ビューには次の2つのファイルタイプがあります。

レポートアイコン
ディレクトリアイコン
状態
正常に完了しました。
正常に完了しました
実行中
正常に完了しました。 正常に完了しました 正常に完了(スクリプトは終了コード0を返す)
正常に完了しました。 正常に完了しました 失敗(スクリプトが停止したか、終了コード> 0が生成)
正常に完了しました。 正常に完了しました 無効なレポート(不明または壊れた形式)
報告なし 利用可能なプロジェクトはありません。 使用可能なXMLレポートが無い(ディレクトリには実行ログおよび/またはHTML形式のレポートのみが含まれる)