ハートコア株式会社
HeartCore Robo ドキュメント一覧
2023-01-04

HeartCore Robo 設定ガイド


目次

1. クライアントのシステム要件
1.1 Javaの要件
1.2 JDKのインストールと構成
2. サーバーのシステム要件
3. インストール
4. ライセンス
5. アップグレードと移行
6. アンインストール
7. 起動
8. T-Plan Professionalとの統合
9. パフォーマンスの最適化
10. トラブルシューティング

1.クライアントのシステム要件

HeartCore Roboは、アプリケーションがインストールされたクライアント機器のOS上でロボットを実行します。
また、サポートされているリモートデスクトップテクノロジ(RFB / VNCなど)を介してサーバーシステム等(System Under Test、SUT)を自動化することもできます。
クライアント機器とサーバーシステムは基本的に異なるプラットフォームのため、クライアント機器(この章で説明)とサーバーシステム要件(次の章)を個別に記載しています。HeartCore Roboを実行するクライアント機器の要件は次のとおりです。

項目
最小
推奨
プロセッサ(CPU)
設定無し1
2GHz +、2コア以上
メモリ(RAM)
4GB(Javaで必要2
8GB +
空きディスク容量
ロボット単体で150MB以上、M1Macは250MB程度。Java JRE / JDKインストールでさらに200MB程度必要(v7)
500MB以上
オペレーティング·システム
Oracle Java8以上及び互換ディストリビューションでサポートされたOS。
64ビットOS対応のJDK8、11、17LTS最新版を推奨2
ウェブブラウザ
Google Chrome
Microsoft edge(Chromium)
Mozilla Firefox
Internet Explorer 6以上(非サポート対象)
Apple Safari 3以上(XPathサポートが不足しているためサポートが制限されてい
ます)XML、XSLT、XPathをサポートするその他のWebブラウザ
セキュリティを確保するため各ブラウザ最新版を推奨します。
InternatExplorerはサポート終了のため非サポートとなりました。
インストールが必要なソフトウェア
1. Java(JREまたはJDK)8以降(Java要件およびJDKインストールと設定の章を参照)
2. Tesseract OCR(オプション)-テキスト認識(OCR機能)が必要な場合(詳細)。
3. 各Webブラウザ用のWebDriver -Browserコマンド(Selenium)をChrome等で動作させる場合(詳細
Oracle Inc.の最新Java SE(JDK)
1 プロセッサーが遅いと、画像比較やOCRなどのグラフィカル操作のパフォーマンスが低下します
2 全体的なメモリ要件は、SUTのデスクトップサイズ、スクリプトによって実行されるグラフィカル操作の性質、およびテストスイートがマルチスレッドのものとして設計されている並列自動プロセスの数によって異なります。スタックトレースにjava.lang.OutOfMemoryErrorでエラーが発生した場合は-Xmxオプションを使用してJava仮想マシン(JVM)に割り当てられたヒープサイズを上げます。手順については、メモリ調整の章を参照してください。


1.1 Javaの要件


HeartCore RoboはJavaアプリケーションです。Java8以降がインストールされたシステム上で実行されます。
HeartCore RoboはOracle Javaで開発されているため、サポートされているOSではOlacle版を推奨しています(サポートされているシステムリストを参照)。
Javaリリースのサポート状況を以下の表に記載しています。


Roboバージョン
サポートされているJavaバージョン
注意
7.x
Java 8, 11, 17 LTSを推奨 プラグインの動的ロードはJava9以降ではご利用できません。プラグインJARファイルは、クラスパスに配置するか、インストールフォルダーにコピーする必要があります。起動の章を参照してください。
MacOS版ではWeb拡張プラグイン等をインクルードした状態でインストールされます。
6.2.4〜6.3.5
Java 8, 11, 17 LTSを推奨 プラグインの動的ロードはJava9以降ではご利用できません。プラグインJARファイルは、クラスパスに配置するか、インストールフォルダーにコピーする必要があります。起動の章を参照してください。
5.x 〜6.2.2
Java 8, 9, 10, 11, 12 プラグインの動的ロードはJava9以降ではご利用できません。プラグインJARファイルは、クラスパスに配置するか、インストールフォルダーにコピーする必要があります。起動の章を参照してください。
4.4.4+ Java 8, 9, 10, 11
プラグインの動的ロードはJava9以降ではご利用できません。プラグインJARファイルは、クラスパスに配置するか、インストールフォルダーにコピーする必要があります。起動の章を参照してください。
4.4.3 Java 6, 7, 8, 9
プラグインの動的ロードはJava9以降ではご利用できません。プラグインJARファイルは、クラスパスに配置するか、インストールフォルダーにコピーする必要があります。起動の章を参照してください。
またiOSミラーなどの一部の機能にはJava 7以降が必要です。
3.x-4.4.2 Java 6, 7, 8 iOSミラーなどの一部の機能にはJava 7以降が必要です。

※ Javaの導入ではできる限りLTS版をインストールください。他バージョンではセキュリティサポートがごく短い時間でなくなること、また時間経過で予期せぬ認証エラーが多発することが確認されております。


Javaがマシンにインストールされているかどうかを確認するには、ターミナルウィンドウ(Unix / Linux)またはコマンドラインプロンプト(Windows)を開き、次のコマンドを実行します

java -version

Javaがマシン上に存在し、そのバイナリがシステムパス上にある場合、そのバージョンが表示されます。Javaが存在しない場合は、次の場所から無料でダウンロードできます。:
Javaは、Java Runtime Environment (JRE)Java Development Kit (JDK). という2つのディストリビューションで出荷されています。JREはJDKのサブセットであり、開発に必要なJavaソースコードコンパイラとライブラリは含まれていません。HeartCore Roboは両方とも動作しますが、JavaテストスクリプトやJavaコードブロックの開発や実行中の実行など、JDKが必要な機能を使用する場合は、必ずJDKをインストールしてください。
NetBeansやBlueJ等のIDEを使用してJava開発に慣れている場合は、JDKとともに1つのソフトウェアバンドルで入手することも考えられます。どちらのコンポーネントもオープンソースで無料です。 JDKをインストールする際には、次の章で説明するようにシステムパスを更新しなければいけない場合もあります。


1.2 JDKのインストールと設定


Javaテストスクリプトの開発またはJavaコードブロックの使用を計画している場合はJDKをインストールします。
この際に、HeartCore Roboに対して次の2つの方法のいずれかでJava利用のためのパス(Path)設定が必要な場合があります。

代替1: HeartCore Robo環境設定(v2.3.3以降)でJDKパスを設定します。
  1. HeartCore Robo GUI のファイル - >新規テストスクリプト - > Javaテストスクリプトを使用して、新しいJavaテストスクリプトを作成します。
  2. エディタを右クリックし、[ コンパイル ]を選択します。
  3. HeartCore Roboは、インストールされているJDKパッケージの既知のパスを検索します。JDKが見つかった場合、コンパイルは成功し、エラーは報告されません。それ以外の場合は、プリファレンスウィンドウに進むメッセージが表示され、JDKのインストールパスまたはjavacコンパイラの場所を手動で設定できます。
  4. 自動設定をキャンセルするか、別のJDKに切り替える必要がある場合は、「編集」 - >「設定」 - >「Javaテストスクリプトの解釈」パネルでパスを再構成する必要があります。
代替2: javaまたはjavawバイナリ (すべての製品バージョン) を使用して、HeartCore Roboを起動します。このメソッドは、両方が設定されている場合、最初の代替をオーバーライドします。
  1. オプション1:<JDK_dir>\bin パスをシステムパスに置きます。これにより、OSはすべてのJavaアプリケーションのデフォルト解釈としてJDKを使用します。
MS Windowsの手順:
    1. Windowsエクスプローラを起動し、コンピュータノードを右クリックし、コンテキストメニューで[ プロパティ ] を選択します。
    2. [詳細設定] タブまたは項目 (Windows のバージョンによって異なります) に移動し、環境変数を選択します。
    3. Path システム変数を編集し、パスを JDKのbin /ディレクトリに続けて、パス先頭にセミコロン(通常は「C:¥Program Files¥Java¥jdk1.6.0_ <version>¥bin;」)を入力します。
    4. 変数を保存し、OKですべてのウィンドウを閉じます。 
    5. コマンドプロンプトを開き、javac と入力します。コマンドが見つかり、サポートされているパラメーターを出力する必要があります。
その他のシステム: JDKを他のシステムにインストールすると、デフォルトでJDKバイナリを使用するようにシステムが設定される場合とされない場合があります。システム・パス・リストの調整方法やJavaアプリケーションを特定のJavaディストリビューションに関連付ける方法については、各OSの設定方法をWeb検索し参照してください。
  1. オプション2:バッチファイル(またはシェルスクリプト)内の"java" HeartCore Robo startコマンドを、JDKの "java"バイナリへの絶対パスで置き換えます。たとえば、MS Windowsではrobot.batファイルを編集し、バッチファイル内の"java""C:\ProgramFiles\Java\jdk1.x.x_<version>\bin\java" などJavaのインストールパスに書き換えてHeartCore Roboを起動します。他の起動方法(Windowsメニュー、 HeartCore Robo起動スクリプトから開始)を変更する方法については、「HeartCore Roboの起動統合」の章を参照してください。 
ロボットがJDK再起動RobotのGUI上で実行されていることを確認するには、メニューのヘルプ-> 基本情報を選択し、システム情報タブに切り替えてjava.homeプロパティ値がJDKインストールディレクトリであることを確認してください。


2.サーバーのシステム要件


サーバーシステム要件は、テスト中のシステム(SUT)コントロール用に選択された接続タイプ(プロトコル)によって異なります。HeartCore Robo v7では、デフォルトで次の接続をサポートしています。

接続タイプ
説明
VNCサーバー
RFB(VNC)3.3,3.7、または3.8プロトコルでのテスト。
スタティックイメージ
イメージファイル出力を伴うイメージファイルまたはシステムのテスト。
ADB上のAndroid
Androidデバッグブリッジ(ADB)ツールを使用してUSBケーブル経由で接続されたAndroidデバイスのテスト。
ローカルデスクトップ
ローカルデスクトップに表示されるアプリケーションおよびシステムコンポーネントのテスト。
iOSミラー
AirPlay画面のミラーリングと HeartCore RoboまたはVNCサーバーの組み合わせを使用したiOSデバイスのテスト。
XcodeでのiOS自動化
XcodeがインストールされたMac OS XのiOS 9デバイスのテスト。
RDPサーバー
RDPプロトコルでのテスト。



3.インストール

HeartCore Robo は、次の4つの形式(MacOSはIntel版とM1版に分かれています)で提供されます。
  1. HeartCore Robo Windowsインストーラ.msiファイルを含むZIPファイル)。このパッケージはMS Windowsにインストールするだけで、ソフトウェアを標準のWindowsプログラムとして管理することができます。また、ロボットプロジェクトディレクトリと.tprテストスクリプトファイル拡張子をHeartCore Roboに関連付けます。インストーラは、デフォルトでこのツールをC:\Program Files (x86)\HeartCore\Roboディレクトリにインストールします。
  2. HeartCore Robo Mac OS Xアプリケーションインストール用の.dmg ファイルを含むZIPファイル)としてパッケージ化されています。このパッケージはApple MacOS X以上にのみインストールできます。MacOSで製品をインストールするには、システムがダウンロードしたファイルを開いた後に、HeartCore RoboアプリケーションをApplicationsにドラッグします。Intel版とM1版があります。
  3. HeartCore Robo ZIPファイル。必要なすべてのファイルを含むプラットフォームに依存しないZIPアーカイブです。インストーラはありません。Linuxを始めとしてWindowsやMac OSを含むすべてのプラットフォームで使用できます。ファイルをハードドライブのフォルダに解凍するだけです。アーカイブには、少なくとも次のファイルが含まれている必要があります。
ファイル名
説明
robot.jar コンパイル済みのHeartCore Roboクラスを含むJavaアーカイブ。
activation.jar
Sun Microsystems Inc.がBCLで配布しているJavaBeans(TM)Activation Framework(JAF)v1.1.1ライブラリ。JavaMailライブラリで必要です。製品によって直接使用されることはありません。
mail.jar
JavaMail(TM)v1.4.1ライブラリ、BCLでSun Microsystems Inc.によって配布されています。SendMail コマンド/ Java APIメソッド呼び出しのためのEメールインフラストラクチャーを提供します。
poi-3.6-20091214.jar ファイルは、libs/poiフォルダに保存されたApache POI 4.0ライブラリに依存するリリース5のダミー(空のアーカイブ)です。Robotリリース5はApache POI 3.xと下位互換性がないため、古いpoi-3.6-20091214.jarファイルをクラスパスに保持すると、新しいPOIライブラリと衝突する可能性があることに注意してください。
リリース4以前のファイルには、Apache License v2.0で配布される再パッケージされたApache POI 3.7ライブラリが含まれています。アーカイブには、poi-ooxml、poi-ooxml-schemas、xmlbeans、およびdom4jライブラリのコンテンツが含まれています。poi-3.6-20091214.jarの古いライブラリ名は、v2.1および2.2との互換性のために保存されています。POIとそのサブコンポーネントライセンスの詳細については、LICENSEファイルを参照してください。ライブラリは、Excelコマンドを使用してMS Excelファイルへの接続を提供します。
javaparser.jar
Java Parser 1.0.8ライブラリは、GNU Lesser GPL(LGPL)で配布されています。ライブラリをアップグレードするには、単にファイルを置き換えてクラスパスに配置するか、HeartCore Roboに動的に読み込ませるために同じ名前を使用します。製品とともにパッケージ化されたライブラリのソースコードは、こちらから入手できます。ソースコードはリリース1.0.8と同等で、変更されていません。
jna-3.5.1.jar
platform-3.5.1.jar
Java Native Access(JNA)3.5.1ライブラリは、GNU Lesser GPL(LGPL)で配布されています。ライブラリをアップグレードするには、ファイルを置き換えてクラスパスに置きます。ファイルがクラスパスに配置されていない場合、Robotは接頭辞付きのJARファイルを検索し、それらを動的にロードします。製品とともにパッケージ化されたライブラリのソースコードは、こちらから入手できます。ソースコードはJNAリリース3.5.1と同等で、変更されていません。
JTattoo.jar
JTattooルックアンドフィール(JTattooバイナリライセンス)。
JNativeHook.jar
JNativeHook 2.0.3ライブラリは、GNU Lesser GPL(LGPL)v3で配布されています。ライブラリをアップグレードするには、単にファイルを置き換えてクラスパスに配置するか、HeartCore Roboに動的に読み込ませるために同じ名前を使用します。製品とともにパッケージ化されたライブラリのソースコードは、こちらから入手できます。ソースコードはリリース2.0.3と同等で、変更されていません。
cron4j-2.2.5.jar
Cron4J 2.2.5ライブラリは、GNU Lesser GPL(LGPL)の下で配布されていますライブラリをアップグレードするには、単にファイルを置き換えてクラスパスに配置するか、HeartCore Roboに動的に読み込ませるために同じ名前を使用します。製品とともにパッケージ化されたライブラリのソースコードは、こちらから入手できます。ソースコードはリリース2.2.5に相当し、変更されていません。
gson-2.5.jar
GSON 2.5(Google JSONパーサー)はApache License v2.0下で配布されています。
robot.sh HeartCore Robo Unix / Linux用起動スクリプト。詳細については、「起動」の章を参照してください。
robot.bat HeartCore Robo Windows用の起動スクリプト。詳細については、「起動」の章を参照してください。
imgcompare.sh
Unix / Linux用のオフラインCLIイメージ比較のためのスクリプト。詳細については、「起動」の章を参照してください。
imgcompare.bat Windows用のオフラインCLIイメージ比較のためのスクリプト。詳細については、「起動」の章を参照してください。
install.html このHeartCore Roboリリースノートのコピー。
LICENSE.txt ライセンステキスト。HeartCore Roboを使用する前に、注意深くお読みください。
crc32.properties
アップデート&アップグレード機能用にインストールされたすべてのファイルのCRC32チェックサム。
libs / poi / *
Apache License v2.0で配布されるApache POI 4.0.1 。Excelコマンドを使用してMS Excelファイルとやり取りできるようにします。
plugins/
プラグインのデフォルトのドロップインフォルダ。存在する場合と存在しない場合があります。
libs / poi / *
Apache License v2.0配布されるJava用のSelenium Client&WebDriver Language Bindings 3.141.59 。
plugins/
プラグインのデフォルトのドロップインフォルダ。存在する場合と存在しない場合があります。

HeartCore Roboは以下にも依存しています:
GNU Lesser GPL (LGPL)v3で配布されている未修正FFmpegライブラリバージョン3.0.1にも依存しています。これらはrobot.jarファイルの中にパッケージ化されて
ます。ここでは、ファイル名が保存されていれば新しいバージョンに置き換えることができます。FFmpeg 3.0.1のソースコードは、Zeranoeまたは当サイトで入手できます。

1台のマシンで複数のHeartCore Roboをホストすることができます。ただし、同じユーザーアカウントで複数のプログラムインスタンスを同時に実行すると、同期またはロックのメカニズムがないため、ユーザー固有の構成ファイルが上書きされます。


4.ライセンス


HeartCore Roboは、有効なライセンスを必要とします。サポートされているメカニズムは2つあります。

ライセンスサーバー

ライセンスサーバーは、リリース4.3以降のデフォルトオプションです。ライセンスサーバーをインストールして実行する必要があります。ファイルベースのライセンスキーからライセンスサーバーに切り替える場合は、以下の手順をお読みください。
    1. [ツール] - > [ライセンスキーマネージャ]ウィンドウで設定。これにより、ls.addressキーにライセンスキーURLが設定されユーザー構成ファイル(hcrobo.cfg)に保存されます。
    2. --licenseserver CLIオプションを使用してアドレスを指定します。
    3. RobotをサードパーティのJavaフレームワークおよび/またはアプリケーションに統合するソリューションでは、ライセンスrobot.licenseServerキーパスまたはセミコロンで区切られたパスのリストをシステムプロパティ(v4.4以降)で指定できます。
      ApplicationSupportクラスがインスタンス化される前に実行する必要があります。このオプションは、v4.4以降で使用できます。
      例:
      System.setProperty("robot.licenseServer", "mymachine:8880");
      ...
      ApplicationSupport robot = new ApplicationSupport();

重要:


互換性の理由から、ロボットはファイルベースのキー設定をサーバーに優先します。ファイルベースのキー設定(無効なものであっても)がある場合、ロボットはサーバーをチェックしません。ファイルベースのキーからサーバーに切り替える場合は、必ず次の点を確認してください。


ファイルベースのライセンスキー
ファイルベースのキーは、v4.2以前のバージョンとの下位互換性のために維持されています。これらは、サーバーが適切でない場合にのみ新しい契約のために提供されます。ライセンスキーファイルの拡張子は.tlicです。
次のようなライセンスの詳細を含む暗号化されたファイルです。 HeartCore Roboライセンスを購入する際には、1つまたは複数のライセンスキーを受け取る必要があります。セキュリティ上の理由から、ライセンスキーファイルは、HeartCore Robo販売代理店からの電子メールなど製品とは別にお客様に配送される場合があります。
インストールにはいくつかの方法があります:
  1. キーファイルをHeartCore Roboインストールディレクトリrobot.jarファイルがあるディレクトリ)に保存します。 ツールは起動時最初にライセンスキーファイルのフォルダをチェックするので、すぐに取得されます。インストールディレクトリには、任意の数のライセンスファイルが存在させることができます。
  2. または、キーファイルをハードドライブ上のカスタムの場所に保存し、ライセンスキーマネージャを利用して登録します。ライセンスキーマネージャを開くには、GUIモードでHeartCore Roboを起動します(カスタムCLI引数なし)。有効なライセンスがインストールされていない場合、ツールには「ライセンスなし」というエラーメッセージが表示されライセンスキーマネージャが直接起動します。既に有効なライセンスがインストールされている場合は、[ツール] - > [ライセンスキーマネージャ]を開き、登録されたライセンスキーのリストにファイルを追加します。そのようなファイルのリスト(インストールディレクトリ以外のキーを意味する)は、ユーザー設定のリストに保存され、ユーザー設定ファイルもコピーしない限り、移行中に失われる可能性があることに注意してください。ライセンスキー構成を変更するには、製品を再起動する必要があります。
  3. --licensekey CLIオプションを使用してライセンスキーURL(パス)を指定します。
  4. Robotをサードパーティ製のJavaフレームワークおよび/またはアプリケーションに統合するソリューションでは、ライセンスキーパスまたはセミコロンで区切られたパスのリストをrobot.licenseKeyシステムプロパティで指定できます。ApplicationSupportクラスがインスタンス化される前に実行する必要があります。このオプションはv4.0.3から利用可能です。
    例:
    System.setProperty("robot.licenseKey","C:\\MyData\\robot.tlic");
    ...
    ApplicationSupport robot = new ApplicationSupport();
ファイルベースのキーは自由に組み合わせることができます。つまり、ファイルがインストールフォルダにあるのか、外部にあるのかにかかわらず、任意の数のライセンスキーを一度にインストールすることができます。接続数は、インストールされているすべての有効なライセンスのライセンス付き接続の合計に等しくなります。
このシステムでは、スケールアップが必要なときに、追加のライセンスを購入して製品に簡単に接続することができます。


5.アップグレードと移行

HeartCore Robo v6以上を新しいリリースでアップグレードするには、以下の手順に従います。

代替1:自動アップグレード(v6以上)

自動アップグレードは、製品を新しいバージョンにアップグレードするための快適で信頼性の高い方法を提供します。手動アップグレードとは異なり、自動プロセスはファイル破損(CRC32)から
保護されカスタマイズ/変更された製品ファイルを検出し、更新が失敗した場合に元の製品を復元することができます。ステップ:
  1. GUIのツール-> アップデート&アップグレードを選択します。ロボットの書き込み権限が不十分な場合は、管理者権限で再起動してください。
  1. アップデートマネージャウインドウ内の使用OSに該当するリリースを選択して「ダウンロード&インストール」を実行します。実行が完了したらアプリケーションを再起動してください。アップグレードプロセスの詳細については、アップデート&アップグレードのヘルプトピックを参照してください。

代替2:手動アップグレード(すべてのバージョン)

  1. 必要なOSのZIPリリースファイルをダウンロードします。
  2. 製品ファイル、たとえばrobot.shrobot.batなどのRobo開始用スクリプトを変更またはカスタマイズした場合は更新プロセス後にバックアップして復元します。テストスクリプト、テンプレートイメージ、またはアプリケーション構成ファイル(.cfg) などはアップデートの影響を受けないためバックアップの必要はありません。
  3. ZIPファイルを解凍してインストールファイルで再インストールします。インストールフォルダは、robot.jarファイルを含むディレクトリとなっています。

HeartCore Roboの移行はかなり簡単です。クロスプラットフォームのzipリリースは、ファイルシステム全体を異なるOSの別PCにコピーして移動することもできます。
別のマシンに移行する場合は、ユーザー固有の構成ファイルもユーザーのホーム・ディレクトリにコピーして、環境設定を変更しないようにします。


Windows Installerによってインストールされた製品の移行は、再インストールによってのみ可能です。ただし 、インストールフォルダから別の場所に製品ファイルをコピーすることで、スタンドアロンのクロスプラットフォームのRobotインスタンスを作成できます。
そのように移行した場合は、robot.batスクリプト、または「起動」の章で説明したダイレクトJavaコマンドを使用して実行します。


MacOSのリリースは、.dmg ファイルの実行によってのみ入れ替えが可能です。旧バージョンを削除した後に新バージョンのインストールを行なってください。クロスプラットフォーム版は任意のディレクトリに解凍することで利用できます。

アップグレードまたはダウングレード(下位バージョンへの移行)後に予期しない起動またはデスクトップ接続エラーが発生する場合は、次の手順を実行して工場出荷時の設定に戻します


6.アンインストール

HeartCore RoboをWindowsインストーラでインストールした場合は、Windowsソフトウェアマネージャ(旧バージョンのWindowsではコントロールパネル - > ソフトウェアの追加または削除コントロールパネル - > Windows Vistaのプログラムと機能)でアンインストールできます<。

zipファイルから解凍したクロスプラットフォームのHeartCore Roboデータをアンインストールするには、解凍しディレクトリに配置したファイルを削除します。また、ユーザー構成ファイルもディレクトリごと削除してください。HeartCore Roboは、スクリーンショット、テンプレートイメージ、自動テストレポートなどの自動出力を除いて、その他のファイルやレジストリエントリを作成しません。

7.起動

HeartCore Roboを開始するには:
MS Windows
Mac OS X:

Linux / Unix:

CLIコマンドの実行についてはrobot.sh -h、respを参照してください。robot.bat --help。完全なリファレンスについては、HeartCore Robo CLIリファレンスを参照してください。ツールが起動しない場合は、このドキュメントの最後にある「トラブルシューティング」の章を参照してください。ラッパースクリプトは、実際にはJavaを適切なオプションで起動します。HeartCore Roboの起動コマンドをカスタマイズする必要がある場合は、次の構文を使用します。 java -jar robot.jar"robot.jar ファイルをダブルクリックして起動することはお勧めしません。Javaコンパイラのクラスパスの入力に失敗します。Javaソースコード(Javaスクリプトや通常のスクリプトに埋め込まれたJavaコードブロックなど)のコンパイルや実行が拒否されることがあります。

注意: Java 9では新しいセキュリティ制限が導入されたため、サードパーティのJavaライブラリ(JAR)をすぐにロードすることはできなくなりました。これらのファイルはすべて-classpath 、上記のコマンドのオプションの後にリストされなければなりません。古いRobotリリースからアップグレードし、カスタムCLI開始コマンドを使用する場合は、特にこの要件に注意してください。この制限は、T-Plan Ltd.によってJARファイルとして提供されるスクリプトおよび機能プラグインには適用されません。

HeartCore Roboには実行時に2つのモードがあります。 HeartCore Roboヘルプで使用可能なCLIオプション仕様書、またはオンラインHeartCore Robo CLIリファレンスを参照してください。

GUIが起動したら、ヘルプを開いてHeartCore Roboの使い方を参照してください。ヘルプドキュメント/ドキュメントコレクションは、https://www.heartcore.co.jp/hcrobodesktop/docsでも確認できます。

HeartCore Roboは、簡単なCLIインターフェイスを使用してオフラインイメージの比較にも使用できます。この機能を調べるには、ラッパースクリプトimgcompare.sh (Unix / Linuxの場合)またはimgcompare.bat(Windowsの場合)を実行するか、次のようにJavaを直接起動します。

8. T-Plan Professionalとの統合(この項は廃止されています)

HeartCore Roboは、Windows上にT-Plan Professional 7.0以降と緊密に統合されている可能性があります。つまり、T-Plan ProfessionalはHeartCore Roboを起動するGUIアクションを提供します。この統合は、RobotのCLIリファレンスで説明されているパブリックCLIパラメータに完全に基づいています。統合の原則については、「統合リファレンス」で詳しく説明しています。

T-Plan ProfessionalがHeartCore Roboを起動する方法を設定するには、2つの方法があります。
  1. HeartCore Roboのインストールパスを設定するには、統合リファレンスのT-Plan Professional 7.0の統合の概要の章に記載されているT-Plan ProfessionalInstalled Extensionsモジュールに移動します。
  2. HeartCore Roboベース開始コマンドを変更する必要がある場合 (カスタムJava環境を使用する場合やJVMによって割り当てられるヒープメモリの量を増やす場合など)は、次の手順を実行します。
    1. ロボットの拡張設定ファイルRobotExtn.iniを探します。このファイルは、T-Plan Professional Enterprise GUIからHeartCore Roboを初めて呼び出すときに作成されます。アプリケーションのデータフォルダに保存され、場所はWindowsのバージョンと構成によって異なります。典型的な経路は:
      • Windows XP:  C:\Documents and Settings\<user>\Local Settings\Application Data\T-Plan\Extensions\RobotExtn\RobotExtn.ini
      • Windows Vista:  C:\Users\<user>\AppData\Local\T-Plan\Extensions\RobotExtn\RobotExtn.ini
    2. ファイルを編集します。これには、それぞれがT-Plan Professional GUIから呼び出された特定のアクションに対応する一連のコマンドテンプレートが含まれています。
      実行= java -Xmx256m -cp "%1 \ robot.jar;%1 \ jh.jar;%1 \ activation.jar;%1 \ mail.jar;%1 \ poi-3.6-20091214.jar" com.tplan.robot.ApplicationSupport
    3. 必要に応じてコマンドを調整します。上記の例の%1変数は、前の段落で指定した製品のインストールパスに置き換えられます。各コマンドには、T-Plan ProfessionalのCLIオプション値が入力された追加の変数が含まれている場合があります。
    4. ファイルを保存し、T-Plan Professionalを再起動して変更を適用します。

9.パフォーマンスの最適化

HeartCore Roboは、さまざまな自動化されたテストシナリオや環境で使用することができるため、細かいチューニングによってパフォーマンスが大幅に向上する可能性があります。

メモリの調整

HeartCore Roboはメモリ集中型の画像処理を実行するため、最終的にメモリ不足になる可能性があります。ここれは通常、コンソールウィンドウ (Windows の場合はコマンドプロンプト) に表示される OutOfMemoryError または StackOverflowError スタックトレースのクラッシュとして発生します。最初の援助は、ロボットのプロセスに割り当てられたメモリの量を増やすことです:

  1. java起動設定に基づいてロボットの起動コマンドを探します:
  1. ロボットが OutOfMemoryError で失敗する場合は、ヒープサイズを上げる必要があります。java (または javaw) コマンドの後の-Xmx パラメータは、java 仮想マシンが最大で使用できるヒープメモリの量を示します。この数値を高い値に上げます。たとえば、-Xmx512m を使用すると、必要に応じて JVM ヒープを512mb まで拡張できます。この制限は、メモリがすぐに割り当てられることを意味しません。
  1. ロボットが StackOverflowError で失敗した場合、-Xss パラメータを使用してスタックサイズを上げます。構文は、-Xmx と同じです。デフォルトスタックサイズは、通常、x86 システムの場合は384k と512k、x64 の場合は1mb の間になりますが、通常は、スタックメモリを x86 (-Xss1m) の場合1mb に、x64 (-Xss2m) で2mb に増やすだけで十分です。
Javaは、-Xmxスイッチを介してRAMのサイズまで任意の数を受け入れる可能性がありますが、その動作はさらにシステムアーキテクチャの影響を受けます。
メモリ消費を最小限に抑えるためのヒント:
上記のヒントを使用して解決できないメモリ問題が発生した場合は、失敗したロボットプロセスからメモリダンプを取得してください。Robot 3.1.1以降のGUIの右下にあるメモリモニタをクリックして作成することができます。または-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./java_pid<pid>.hprof javajavaw)コマンドの後にスイッチを使用してロボットを起動し、プロセスが自動的にダンプを作成できるようにします。詳細は、Oracleのマニュアルを参照してください。


クライアント側の設定

HeartCore Roboは、ロボットアプリケーションとVNC接続の両方のパフォーマンスを向上させることができる多数の設定可​​能なパラメータをサポートしています。次の表に、最も重要なものを示します。

パラメータ名(場所)
説明
エンコーディング
(GUI:プリファレンス-> RFB(VNC)3.xクライアント)
エンコーディングは、ロボットとVNCサーバ間で転送される画像データがどのようにエンコードされるかを指定します。それらは、最初の(一番上の)項目が最高の優先順位を持つ順序付きリストとして指定されます。各エンコーディングは、ネットワークを介して転送されるデータの量(より良い圧縮=より少ないデータ)とそれをデコードするのに必要なローカルCPUリソースとの間でトレードオフするために、画像データをエンコードする異なるアルゴリズムを使用します。
  • あなたのVNCサーバが遠隔地にあるか、ネットワークが遅く、ローカルCPUがかなり速い場合は、TightZlibHextileなどの高圧縮のエンコーディングを 最初の場所に移動してください。
  • ローカルCPUの速度が遅く、ネットワークが高速である場合は、圧縮率は低いがデコードが容易なHextileRRE、またはCoRREを試してください 。
  • Rawエンコーディングを好んではいけません(最初に設定します)。ピクセルが圧縮されていない生の形で転送されるのは、最も効率的ではありません。しかし、シンプルなサーバー(モバイルデバイスや組み込みシステムのものなど)の中にはこのサーバーだけをサポートしていて、そのサーバーが存在する必要があるため、リストのどこか低いほうに保管してください。
  • 問題が発生しない限り、(一部のサーバーがそれを好まず、存在しているときにクラッシュする傾向がある)、リスト内のカーソルエンコーディングを保持します (任意の場所)。これは、クライアント (ロボット) は、ローカルではなく、デスクトップイメージにそれをエンコードするカーソルをレンダリングします。これにより、低速なネットワーク環境でデスクトップのパフォーマンスが大幅に向上します。また、画像の比較を容易にし、より信頼性が高くなります。
エンコーディングの効率を確認するに は、同じパネルの[ Console debug logging]パラメータを[ Full ]に設定し、コンソールウィンドウ(コマンドプロンプト)でパフォーマンスデータを確認します。
スクリプトエディタの動作(GUI:プリファレンス-> 実行)
RobotのGUIのスクリプトエディタは、あらかじめ設定されたアイドル時間後にスクリプトの変更をコンパイルするようにデフォルトで設定されています。これによりGUIのパフォーマンスが低下することがあります。特に、長いスクリプトが編集されている、および/または開いているエディタが複数ある、Javaコードブロックのテクノロジを使用してJavaソースコードまたはJavaソースコードを呼び出すスクリプトがあります。自動コンパイルの設定を検討し、エディタのコンテキストメニューまたは メインアプリケーションメニューのスクリプト - >コンパイルで必要なときにのみ手動でコンパイルしてください。
接続プーリング(Java API)
接続プーリングを使用すると、サーバー接続を再利用できるため、再接続のオーバーハードを回避できます。このメカニズムは、Java APIからのみ適用できます。詳細については、RemoteDesktopClientFactory クラスのドキュメントを参照してください。


サーバーサイドの設定

クライアントとサーバーの接続のパフォーマンスを大幅に向上させるための推奨事項がいくつかあります。

10.トラブルシューティング

この章では、最も一般的なインストールおよびセットアップのエラーについて説明します。ここに記載されていない問題が発生した場合は、弊社サポートサイトにご相談ください。

HeartCore Roboが「java:command not found」というメッセージで起動できない

マシンにJavaがインストールされていないか、Java実行ファイルのパスがOSパスに含まれていません。 このドキュメントのクライアントシステム要件の章を読んでください。

HeartCore Roboは、「スレッド内の例外」メイン「java.lang.NoClassDefFoundError:com / tplan / robot / ApplicationSupport」というメッセージで開始できません。

これは、HeartCore Robo JAR(Java ARchive)ファイルrobot.jarがJavaクラスパスに正しく含まれていないことを示します。

HeartCore Roboが起動しますが、「JavaHelpライブラリが見つかりません。ファイルjh.jarがJavaクラスパスに含まれていることを確認してください」というメッセージが表示されます。

これは、JavaHelp JARファイルjh.jarがJavaクラスパスに正しく含まれていないことを示します。ツールは実行されますが、オンラインヘルプにアクセスすることはできません。ただし、Webブラウザで開いているリンクの中にはうまくいくものもあります。すべてのヘルプ文書は、https://www.heartcore.co.jp/hcrobodesktop/docsからオンラインで入手できるため、オンラインマニュアルに切り替えてこのエラーを無視することができます。それを解決するには:

HeartCore RoboがNoClassDefNotFoundError、NoSuchFieldErrorまたは他の重大なJavaエラーで起動できない

上記のケースのいずれかが当てはまる場合を除き、これらの問題は通常、必要なバージョンより低いバージョンのJavaを使用すると発生します。 必要なJavaバージョンについては、「クライアントシステム要件」の章を参照して、java -versionコマンドで インストールしたバージョンを確認してください。

スクリプトrobot.sh またはrobot.batスクリプトのいずれかがCLIオプションを渡さない

ラッパースクリプトは9つ以上のオプションを処理できません。この制限を超えるすべてのオプションは無視されます。「起動」の章で説明しているように、Javaを直接実行する必要があります。

HeartCore Roboがjava.lang.OutOfMemoryErrorでクラッシュする

「メモリの調整」 の章の説明に従って、メモリの上限を上げます。