HeartCore Robo Desktop 4.4 Docコレクション |
21/06/18 |
スケジュールはschedules/
、プロジェクトのフォルダに物理的にXMLファイルとして保存されます。テストスクリプトは相対ファイルパスを介して参照されるため、プロジェクト全体を移動または名前を変更すると、テストスイートは機能したままです。
テストスイートは、スケジューラ
ツールを使用して簡単に作成および管理できます。スケジュールを作成するには、次のいずれかを実行します。
「開始設定」というタイトルの青色の長方形のオブジェクト
は、最上位のスケジュールオブジェクトを表します。
「スタートタイプ」プロパティは、テストスイートは、それが開始されるとき(実行スケジュールの起動オプションを参照してください。):
[ レポートの詳細]
セクションでは、スケジュールレポートの作成方法を設定できます。
<folder>/summary.xml
スケジュールに最初のスクリプト(「タスク」と呼ばれる)を追加するには、最上位スケジュールオブジェクトをクリックし、次のいずれかを実行します。
タスクは、スクリプトファイル名の付いた新しいボックスとしてビューに表示されます。オプションの表示名を付けることができます。スクリプトを追加するには:
タスクのプロパティは、下のエディタで編集できます。
-c/--connect
オプション-p/--password
のスクリプトでは、スクリプトを実行するテスト環境(サーバーまたはデバイス)を指定できます。例えば、以下のスクリーンショットは、Android over ADB接続を介して接続されたシリアル番号A123456のAndroidデバイス上でスクリプトを起動するようにRobotに指示します。-v/--variable
指定したスクリプト変数を固定値に設定します。実行固有の値をスクリプトに渡すことができます。このオプションは、複数の変数を設定するために複数回指定することができます。-n/--nodisplay
または-o/--option
、Robot startコマンドのレベルでのみ受け入れられるその他の適用可能なCLIオプション。それらはスケジュールのすべてのスクリプトに適用されます。参照
実行スケジュールのスケジュール実行の詳細については、章を。-n/--nodisplay
ユーザーライセンスが複数のプロセスを許可する場合、タスクは並行して開始されます。接続の競合を注意してください。つまり、2つのタスクが同じSUTに接続されていないことを確認してください。たとえば、携帯電話アプリケーションのテストを検討します。iOS(iOS.tpr
)とAndroid(Android.tpr
)上でテストするための2つのテストスクリプトがあります。計画は、iOS 6デバイスで最初に実行し、iOS 7でも再テストに合格するときです。Androidでのテストは並行して開始されます。Samsung S2デバイスで最初に実行され、合格すればSamsung S3で再テストされます。スケジュールは次のようになります。
テストスイートは一般に、個々のテストスクリプトと同じように扱われます。彼らは3つの方法で始めることができます:
GUIはテストスクリプトを並行して実行することができないため、GUIは常に1つずつ順番に実行されます。並列実行の場合は、 オプションとともにCLI またはJava API実行モードを使用します。
-n/--nodisplay
-r/--run
CLIオプションを介してRobotに渡すこともできます。これでロボットが起動し、スケジュールを実行して終了します。2つのモードがあります。<
Robot_start_command
> -r <schedule_XML>
-n/--nodisplay
オプション。実稼働環境の展開にお勧めします。GUIを開くことはできませんので、メモリ要件は非常に低く、高速です。telnetやssh経由でリモートから実行を開始する場合にも適してい
ます。スケジュールにパラレルスクリプトが含まれている場合、それらは並行して開始されます。コマンド:<
Robot_start_command
> -n -r <schedule_XML>
-r/--run
引数内のオプションを渡されます。代わりに、既存のScheduleインスタンスの実行可能ファイルを作成する新しいcreateAutomatedRunnable(Schedule、String、String []、PrintStream、boolean)メソッドがあります:public static void main(String args[]) {
ApplicationSupport robot = new ApplicationSupport();
AutomatedRunnable t = robot.createAutomatedRunnable("Example" , new String[] {"-r", "
<path_to_schedule_XML>" }, System.out, true);
new Thread(t).start();
}
public static void main(String args[]) throws ParserConfigurationException, SAXException, IOException {
ApplicationSupport robot = new ApplicationSupport();
com.tplan.robot.scheduler.Schedule schedule = new com.tplan.robot.scheduler.Schedule();
schedule.read(new java.io.File("
<path_to_schedule_XML> "));
AutomatedRunnable t = robot.createAutomatedRunnable(schedule, "Example" , new String[] {}, System.out, true);
new Thread(t).start();
}
両方のアプローチは、強制的に許可するCLIの実行モードを入れて-n
か、--nodisplay
入力引数のリストに:AutomatedRunnable t = robot.createAutomatedRunnable("Example" , new String[] {
"-n",
"-r", "
<path_to_schedule_XML>" }, System.out, true);