コマンドライン実行
このセクションでは、コマンドライン インターフェースからテスト実行ビルドを実行する方法について説明します。また、使用可能なコマンドライン引数とパラメーター、およびそれらの使用例についても説明します。
コマンドラインからのテストの実行
コマンドラインからのテストの実行は、以下の手順でおこないます。
コマンドライン インターフェースで、テスト実行ビルドがある出力フォルダーに移動し、テスト実行ファイル名を入力し、Enter を押下します。
メモ
コマンドライン引数を指定しない場合、テスト実行ビルドの作成時の設定 (ソリューション設定、TestRun 設定、レポート設定、など) でテストを実行します。
結果:
Ranorex Studio の RUN ボタンで実行した場合と同じように、テストが実行されます。ターミナル ウィンドウには、デバッグ情報が表示されます。
ErrorLevel 戻り値
テストを実行すると、テスト結果を示す ErrorLevel 戻り値が返されます。
0 | テスト実行が成功 |
-1 | テスト実行がエラーにより中断 |
-2 | 指定した Ranorex Agent が見つからない |
42 | 有効なライセンスがない |
メモ
この戻り値は、継続的インテグレーション (CI) 環境でテストを実行する場合などで使用します。テストはこの値を自動的に CI システムに返します。
コマンドの構文
ここでは、使用可能なコマンドライン引数を説明するために、以下の構文を使用します。
/ | 引数は、スラッシュを付けて指定します。例: /help 。複数指定する場合にはスペースで区切ります。 |
: | コロンは、引数のパラメーターを示します。例: /reportlevel:Debug 。 |
| | パイプは、排他的な選択肢 (いずれかの一方) を示します。例: /reportlevel:Debug|Info 。コマンドライン インターフェース上では入力しません。 |
|| | 二重パイプは、包括的な選択肢 (いずれか一方、あるいは両方) を示します。例: /reportfile:<path name>||<report name> 。コマンドライン インターフェース上では入力しません。 |
{ } | 中括弧 (ブレース) は、オプションの引数を示します。例: /testrail {trrunid=<id>} 。コマンドライン インターフェース上では入力しません。 |
< > | 山括弧 (アングル ブラケット) は、プレースホルダーを示します。例: /reportlevel:<any integer value> 。コマンドライン インターフェース上では入力しません。 |
構文の例:
<test_project_name>.exe {/<argument1> /<argument2>:<parameter1>|<parameter2>} …
ほぼすべての引数は、短い形式と長い形式が使用できます。混在して使用することもできます。
メモ
原則的には、すべての引数はオプション (任意) です。テスト実行ファイルを引数なしで実行すると、ビルド時の設定で実行がおこなわれます。引数によって、これらの設定を簡単に調整できます。
以降に示す例で、中括弧 (ブレース) で囲われた部分はオプションであり、省略しても引数が機能することを示します。それ以外の部分は必須であり、指定しないと引数が機能しません。
ヘルプの表示
/?|help
使用可能なコマンドライン引数とそのパラメーターの一覧を、コマンドライン インターフェースに表示します。
例:
RxDatabase.exe /?
テスト実行ファイル RxDatabase.exe で使用可能なコマンドライン引数を表示します。
メンテナンス モードの有効化
/m|maintenancemode
テストをメンテナンス モードで実行します。
例:
RxDatabase.exe /m
テスト実行ファイル RxDatabase.exe を、メンテナンス モードで実行します。
参照
メンテナンス モードについては、Ranorex Studio アドバンスト > ⇢ メンテナンス モード を参照してください。
レポート
レポート レベルの定義
/rl|reportlevel:None|Debug|Info|Warn|Error|Success|Failure|<any integer value>
- レポートに含めるメッセージのしきい値を設定します。
- レポート生成自体を無効にするものではありません。
- 規定のレポート レベルは、以下の値に対応しています。Debug=10, Info=20, Warn=30, Error=40, Success=110, Failure=120
- レポート レベル名または値を使用して指定します。
例:
RxDatabase.exe /rl:Error
レポート レベルとして Error (=40) を設定します。レポート レベル Error 以上のメッセージのみがレポートに出力されます。
RxDatabase.exe /rl:110
レポート レベルとして 110 (=Success) を設定します。レポート レベル 110 以上のメッセージのみがレポートに出力されます。
レポート ファイル名およびパスの指定
/rf|reportfile:<path name>||<file name>
- <report_name> : レポート ファイル名を設定します。
- <path_name> : レポートの保存パスを設定します。末尾にバックスラッシュが必要です。
- 最低でもいずれかのパラメーターの指定が必要です。
- いずれかのパラメーターのみを指定した場合、指定しなかった方のパラメーターではデフォルト値が使用されます。
- パスの指定は、すべてのレポート ファイル (.rxlog, rxlog.data, .css, .xsl, RanorexReport.png) に適用されます。
- <report name> では、プレースホルダーを使用することもできます。詳しくは、後述のレポート名のプレースホルダーで説明しています。
例:
RxDatabase.exe /rf:myReport_%Y
レポート ファイルを、”myReport_YYYY.rxlog” および “myReport_YYYY.rxlog.data” (つまり “myReport_2019.rxlog”) という名前で保存します。保存パスはデフォルト値が使用されます。
RxDatabase.exe /rf:myReports\myReport_%Y-%M-%D
出力フォルダーに myReports フォルダーを作成し、レポート ファイルを “myReport_YYYY-MM-DD.rxlog” および “myReport_YYYY-MM-DD.rxlog.data” (つまり “myReport_2019-11-23.rxlog”) という名前で作成します。
アーカイブ レポートの作成
/zr|zipreport {/zrf|zipreportfile:<path name>||<file name>}
- 第一引数で、拡張子 .rxzlog の ZIP 形式のレポートのコピーを作成します。
- 第二引数はオプションです。/zr 引数と共に使用し、/rf 引数と同じような方法で、レポート ファイル名と保存パスを指定します。
例:
RxDatabase.exe /zr
デフォルトのレポート ファイル名およびパスで、ZIP 形式のアーカイブ レポート (.rxzlog) を作成します。
RxDatabase.exe /zr /zrf:myZipReportsmyReport%Y
出力フォルダーに myZipReports フォルダーを作成し、ZIP 形式のアーカイブ レポートを “myReportYYYY.rxzlog” (つまり “myReport2019.rxzlog”) という名前で作成します。
JUnit 互換形式レポートの作成
/ju/junit
- デフォルトのレポート フォルダーに、JUnit 互換形式のレポート コピーを作成します。
- ファイル名は、.junit.xml で終わります。
例:
RxDatabase.exe /ju
出力フォルダーに、ファイル名が .junit.xml で終わる、JUnit 互換形式のレポートのコピーを作成します。
レポート名のプレースホルダー
引数 /rf および /zrf の <file name> パラメーターでは、以下のプレースホルダーが使用できます。
%Y | 現在の年 (例: 2018) |
%M | 現在の月 (例: 11) |
%D | 現在の日付 (例: 28) |
%T | 現在時刻 (例: 105214 => 10:52:14 am) |
%L | Run レベル (Run レベルを参照) |
%R | 現在の TestRun |
%H |
ホスト名 |
%S | テスト スイート名 |
%X | テスト スイートの結果 |
ビデオ レポート
/vr|videorecording:Off|KeepFailedTests|KeepAllTests
{/vrs|viderecordingsource:Auto|Screen1|Screen2|Screen3|Screen4}
- 第一引数で、レコーディング モードを指定します。Off はビデオ レポートを無効化、KeepFailedTests は失敗したテスト ケースのみを記録、KeepAllTests はすべてのテスト ケースを記録します。
- 第二引数はオプションです。レコーディング対象のソース スクリーンを指定します。スクリーン番号は、Windows のディスプレイ設定に対応します。Auto を指定すると、テスト開始時にマウスカーソルがあるスクリーンを対象にします。指定しない場合、テストのビルド時の設定が使用されます。
例:
RxDatabase.exe /vr:KeepFailedTests
ビデオ レポートを有効化し、失敗したテスト ケースの動画のみを保存します。
参照
レポートについては、Ranorex Studio 基礎 > ⇢ レポート を参照ください。
設定の変更
変更可能な設定の一覧
/lcp|listconfigparams
- 変更可能な設定と、現在の設定値を出力します。
設定の変更
/cfg|config:<setting name>=<value>
- 指定した設定に、任意の設定値を指定します。
例:
RxDatabase.exe /cfg:adapter.defaultsearchtimeout=1500ms
adapter.defaultsearchtimeout に 1500ms を指定し、テストを実行します。
RxDatabase.exe /cfg:adapter.defaultsearchtimeout=1500ms /cfg:recorder.replay.generatereport=False
複数の設定は、スペース区切りで指定できます。
参照
各種設定については、Ranorex Studio のシステム詳細 > ⇢ 設定 を参照してください。
TestRail 連携
/testrail /truser=<user name> /trpass=<password> {/trrunid=<id>|/trrunname=<name>}
- /testrail で、テスト結果を、TestRail の新しい TestRun (デフォルト名) と同期します。TestRail にサインインするために、/truser および /trpass の指定が必要です。
- /trrunid=<id> はオプションです。テスト結果を、TestRail の既存の TestRun と同期します。<id> で、TestRail の TestRun の ID を指定します。/trusername と同時に使用することはできません。
- /trrunname=<name> はオプションです。テスト結果を、<name> で指定する名前の、TestRail の新しい TestRun と同期します。/trrunname と同時に使用することはできません。
例:
RxDatabase.exe /testrail /truser=johndoe /trpass=1234 /trrunname=Nightly
テストを実行し、その結果を、TestRail にある Nightly という名前の TestRun に同期します。ユーザー名として johndoe を、パスワードとして 1234 を指定して TestRail にサインインします。
参照
TestRail 連携については、各種システムとの接続 > ⇢ TestRail 連携 を参照してください。
Jira 連携
/jit|jiratasks:on|off|createlink||autohandle
{/jiu|jirauser=<user name or email>} {/jip|jirapass=<password or API token>}
- これらの引数は、事前に Ranorex Studio で Jira 連携をセットアップし、Jira.jsd ファイルがテスト実行ビルドに追加されている場合にのみ機能します。
- /jit|jiratasks で、このテストについての課題の手動/自動処理を有効化し、Jira.jsd ファイルの当該設定を上書きします。
on|off = 課題の手動および自動処理を、有効化/無効化します。
createlinks = 課題の手動処理を有効化します。
autohandle = 課題の自動処理を有効化します。 - テストを実行するマシンの資格情報マネージャーに、Jira の該当のインスタンスの資格情報が保存されている場合には、/jiu|jirauser および /jip|jirapass はオプションです。それ以外の場合には必須です。資格情報が保存されている状態でこの引数を指定した場合には、保存されている資格情報は無視されます。
<user name or email> で、Jira のユーザー名 (Server の場合) または Email (Cloud の場合) を指定します。
<password or API token> で、ユーザーのパスワード (Server の場合) または API トークン (Cloud の場合) を指定します。
例:
RxDatabase.exe /jit:createlink
テストを実行し、課題の手動処理を有効化します。資格情報が保存されている場合です。
RxDatabase.exe /jit:autohandle /jiu=johndoe /jip=1234
テストを実行し、課題の自動処理を有効化します。ユーザー名として johndoe を、パスワードとして 1234 を指定して TestRail にサインインします。資格情報が既にマシンに保存されている場合には、この情報を無視します。
参照
Jira 連携については、各種システムとの接続 > ⇢ Jira 連携 を参照してください。
エンドポイント
エンドポイント上でのテストの実行
/ep|endpoint{:<endpoint name>}
/ep:<WebDriver endpoint> {/epc|endpointconfig:<configuration name>}
/ep:<WebDriver endpoint> {/epcfp|endpointconfigfilepath:<file path>}
- /ep:<endpoint name> で、エンドポイントをオートメーション ルートとして指定し、このエンドポイントでテストを実行します。
- エンドポイント名が指定されない場合、localhost (つまり、現在のマシン) を、オートメーション ルートとして設定します。
- 第二引数はオプションです。指定する場合、オートメーション ルートとして WebDriver エンドポイントを指定する必要があります。<configuration name> で、endpoint configuration を指定します。この configuration は、Ranorex Studio のエンドポイント パッドであらかじめ設定しておく必要があります。/epcfp 引数と同時に使用することはできません。
- 第三引数はオプションです。指定する場合、オートメーション ルートとして WebDriver エンドポイントを指定する必要があります。<file path> で、endpoint configuration を指定します。/epc 引数と同時に使用することはできません。
例:
RxDatabase.exe /ep:iPhone5
iPhone5 という名前のエンドポイントでテストを実行します。
RxDatabase.exe /ep:WebDriver2 /epc:Windows7Chrome
WebDriver2 という名前の WebDriver エンドポイントで、Windows7Chrome という名前の endpoint configuration を使用して、テストを実行します。
参照
エンドポイントについては、Web とモバイルのテスト > ⇢ エンドポイント を参照してください。
テスト スイートのグローバル パラメーターの設定
グローバル パラメーターの一覧
/lp|listglobalparams
- すべてのグローバル パラメーターと、それらの現在の値を出力します。
グローバル パラメーターの設定
/pa|param:<parameter name>=<value>
- 指定したパラメーターに、任意の値を設定します。
- 既存の値を上書きします。(置換はしません)
- 複数のパラメーターを、スペース区切りで指定できます。
例:
RxDatabase.exe /pa:Version=9
テスト実行ビルドの作成時の値によらず、グローバル パラメーター Version の値として 9 を設定し、テストを実行します。
参照
パラメーターについては、Ranorex Studio アドバンスト > データ駆動型テスト > ⇢ パラメーター を参照してください。
テスト コンテナーのローカル パラメーターの設定
ローカル パラメーターの一覧
/ltcpa|listtestcaseparams:<test container>
- 指定したテスト コンテナー (テスト ケース、またはスマート フォルダー) のすべてのローカル パラメーターと、それらの現在の値を出力します。
- <test container> で、テスト コンテナーの名前、または GUID を指定します。
ローカル パラメーターの設定
/tcpa|testcaseparam|testcontainerparam:<test container>:<parameter name>=<value>
- 指定したテスト コンテナーにある指定したパラメーターに、任意の値を設定します。<test container> で、テスト コンテナーの名前、または GUID を指定します。
- 既存の値を上書きします。(置換はしません)
- 複数のパラメーターを、スペース区切りで指定できます。
例:
RxDatabase.exe /tcpa:EnterName:Name=Jane
テスト コンテナー EnterName にあるローカル パラメーター Name の値として Jane を設定し、テストを実行します。
参照
パラメーターについては、Ranorex Studio アドバンスト > データ駆動型テスト > ⇢ パラメーター を参照してください。
実行するテストの選択
実行するテスト スイートの選択
/ts|testsuite:<test suite path>
- 実行するテスト スイートを選択します。
- テスト スイート ファイルが、出力フォルダーのサブフォルダーに配置されている場合には、パス付きで指定する必要があります。通常はファイル名のみで十分です。
- この引数では、単一のテスト スイートのみを指定できます。複数指定した場合には、最後に指定したものが実行されます。
例:
RxDatabase.exe /ts:Introduction.rxtst
テスト スイート Introduction のみを指定してテストを実行します。テスト スイート ファイルが出力フォルダー (bindebug) 直下に配置されている場合には、ファイル名の指定のみで十分です。
RxDatabase.exe /ts:TestSuites\Introduction.rxtst
テスト スイート Introduction のみを指定してテストを実行します。テスト スイート ファイルが、出力フォルダーのサブフォルダーである TestSuites に配置されている場合、このようにパスの指定が必要です。
RxDatabase.exe /ts:RxDatabase.rxtst /ts:Introduction.rxtst
テスト スイート Introduction のみを指定してテストを実行します。最初に指定したテスト スイート RxDatabase は無視されます。
実行するテスト コンテナーの選択
/tc|testcase|testcontainer:<test container>
- 実行するテスト コンテナーを選択します。テスト実行ビルドを作成した際にチェックが入れられている、子孫のテスト コンテナーも実行されます。指定するテスト コンテナー自体にチェックが入れられている必要はありません。
- この引数では、単一のテスト コンテナーのみを指定できます。複数指定した場合には、最後に指定したものが実行されます。
- テスト コンテナーが、プロジェクト/ソリューション作成時に作成された初期テスト スイートの配下の場合には、/ts 引数を省略できます。それ以外の場合には、/ts:<test suite path> 引数で、テスト スイートを指定する必要があります。
メモ
この引数では、指定したテスト コンテナーとその子孫でチェックが入れられているテスト コンテナーのみを実行します。先祖や兄弟のテスト コンテナー、Setup/Teardown 領域は実行されません。このため、テストが失敗する可能性があります。
例:
RxDatabase.exe /tc:Introduction
プロジェクト/ソリューション作成時に作成された初期テスト スイートの配下にある、テスト コンテナー Introduction およびその子孫でチェックが入れられているテスト コンテナーを実行します。
RxDatabase.exe /ts:ImageBased.rxtst /tc:Image_B
テスト スイート ImageBased 配下のテスト コンテナー Image_B およびその子孫でチェックが入れられているテスト コンテナーを実行します。テスト スイート ImageBased.rxtst はプロジェクト作成時に作成された初期テスト スイートではないため、引数での指定が必要です。
RxDatabase.exe /ts:ImageBased.rxtst /tc:Image_B /tc:Image_A
上の例とほぼ同じですが、最初に指定されたテスト コンテナー Image_B は無視され、テスト コンテナー Image_A が実行されます。
テスト コンテナーのデータ ソースでデータ範囲を指定
/tcdr|testcasedatarange|testcontainerdatarange:<test container>=<rows>
- データ ソースの指定した行のみを使用して、テスト コンテナーを実行します。
- <test container> で、テスト コンテナーの名前または GUID を指定します。<rows> で、データ ソースの行を指定します。指定方法は以下の例を確認ください。
- この引数は、対応するテスト コンテナーが実行される場合、つまり、テスト実行ビルド作成時にチェックが入れられている場合、または、実行するテスト コンテナーの選択で説明している /tc 引数や、実行する TestRun の選択で説明している /rc 引数を使用して、実行対象として指定されている場合です。
- テスト コンテナーが、プロジェクト/ソリューション作成時に作成された初期テスト スイートの配下の場合には、/ts 引数を省略できます。それ以外の場合には、/ts:<test suite path> 引数で、テスト スイートを指定する必要があります。
例:
RxDatabase.exe /ts:RxDatabase.rxtst /rc:Database /tcdr:Data-driven_DB_Test=3-5
TestRun Database にあるテスト スイート RxDatabase を実行します。テスト ケース Data-driven_DB_Test のデータ ソースの 3-5 行目のみを使用します。TestRun を指定することで、対象のテスト コンテナーが実行対象になることを明示します。
データ範囲の指定方法:
Data-driven_DB_Test=3
3 行目を使用します。
Data-driven_DB_Test=3-5
3 から 5 行目を使用します。
Data-driven_DB_Test=3,5
3 および 5 行目を使用します。
Data-driven_DB_Test=3,5-8
3 行目、および 5 から 8 行目を使用します。
TestRun の選択
/rc|runconfig:<run configuration>
- TestRun で指定されているテスト スイートを実行します。
- テスト スイートが一つしか存在しない場合には、テスト スイートの指定は必要ありません。テスト スイートが複数存在する場合には、/ts:<test suite> 引数を使用して、TestRun に含まれるテスト スイートを指定する必要がります。
- 単一の TestRun のみを指定できます。複数指定した場合には、最後に指定したものが使用されます。
例:
RxDatabase.exe /rc:All
指定した TestRun にテスト スイートが一つしか存在しない場合に、これを実行します。テスト スイートが複数存在する場合には、エラーになります。
RxDatabase.exe /ts:ImageBased.rxtst /rc:All
TestRun All にあるテスト スイート ImageBased を実行します。
実行するモジュールの選択
/mo|module:<module name>
- テスト コンテナーにあるレコーディング モジュールまたはコード モジュールを実行します。
- /tc 引数で、テスト コンテナーを指定する必要があります。
- モジュールが、プロジェクト/ソリューション作成時に作成された初期テスト スイートの配下の場合には、/ts 引数を省略できます。それ以外の場合には、/ts:<test suite path> 引数で、テスト スイートを指定する必要があります。
- <module_name> で、モジュールの名前、または GUID を指定します。
例:
RxDatabase.exe /ts:ImageBased.rxtst /tc:Image_B /mo:TestDynamicImage
テスト スイート ImageBased にあるテスト コンテナー Image_B にあるレコーディング モジュール TestDynamicImage を実行します。
参照
テスト スイートの実行および TestRun については、Ranorex Studio 基礎 > テスト スイート > ⇢ テスト スイートの実行 を参照ください。
Run label, Run ID, SUT version の設定
Run label
/rul|runlabel:<custom value>
- レポートに表示される、カスタムの Run label を設定します。
- レポート名で使用されるプレースホルダー %L は、Run Label で置き換えられます。
Run ID
/runid:<custom value>
- カスタムの Run ID を設定します。デフォルトのレポートでは表示されません。
SUT version
/sutversion:<custom value>
- レポートに表示される、カスタムのテスト対象アプリ バージョンを設定します。
Ranorex Agent
/a|agent:"<agent name>"|["agent tag"]|?
/a|agent:"<agent name>"|["agent tag"] /artifacts:<file pattern>
- 指定した Ranorex Agent でテストを実行します。単一の Agent のみを指定できます。
- <agent name> で、Agent 名、Agent をインストールしているマシンの名前または IP アドレスを指定します。名前にスペースが含まれる場合には、クォートで括ります。
- 指定した Agent が見つからない場合には、現在のネットワークで見つかった利用可能な Agent の一覧を表示します。
- パラメーター ? で、Agent の検索の手動での開始を指定します。
- [“agent tag”] で、Agent に追加しているタグを指定します。指定したタグを持つ Agent でテストが実行されます。タグにマッチする Agent が複数存在する場合には、ジョブがもっとも少ない Agent が使用されます。コンマ区切りでタグを複数指定できます。タグにスペースが含まれる場合には、クォートで括ります。
- 指定した Agent が見つかった場合には、テスト実行ビルドを自動でアーカイブし、Agent マシンにデプロイし、テストを実行します。
- /artifacts 引数を組み合わせることができます。この引数は、テスト実行後に、指定されたファイル パターンに一致するすべてのファイルを収集してダウンロードするよう、Agent に指示します。複数のファイル パターンをセミコロンで区切って指定できます。デフォルト値は、*.rxlog;*.junit.xml です。ファイル名がこのパターンで終わるすべてのファイルが常にダウンロードされます。
例:
RxDatabase.exe /a:"QA Agent"
QA Agent という名前の Agent でテストを実行します。
RxDatabase.exe /a:["Smoke Tests", Android]
Smoke Tests および Android というタグが付けられている Agent でテストを実行します。
参照
Ranorex Agent の設定については、Ranorex Studio エキスパート > ランタイム/リモート実行 > ⇢ Ranorex Agent を参照してください。
Agent でのテストの実行については、Ranorex Studio エキスパート > ランタイム/リモート実行 > ⇢ Agent によるリモート実行 を参照してください。