メインコンテンツまでスキップ

Runscriptコマンドラインオプション

このページでは、runscriptコマンドを使用してコマンドラインからEggplant Functionalスクリプトを実行する際に使用できるさまざまなオプションについて説明します。このコマンドは、Eggplant Functional GUIを起動せずにスクリプトを実行します。

複数のオプションを追加するには、それぞれの前にスペースを挿入します。これらのコマンドについての詳細は、コマンドラインからの実行を参照してください。

Eggplant Functional GUIを起動するEggplantコマンドを使用してスクリプトを起動するには、Eggplantコマンドラインオプションを参照してください。

Important

重要: Eggplant Functionalのバージョン18.0以降のMacへのインストールでは、runscriptコマンドを呼び出すパスが/Applications/Eggplant.app/Contents/MacOS/runscriptに変更されました。エラーを防ぐために、Eggplant Functionalの以前のバージョンで作成されたテストを更新する必要があるかもしれません。また、Eggplant > Preferences > Run PreferencesInstall runscript in /usr/bin/localボタンをクリックして、runscriptコマンドをユーザーパスに追加することもできます。これにより、runscriptをコマンドライン経由で任意のディレクトリから呼び出すことが可能になります。

Mac上でEggplant Functionalを実行していて、バージョンが18.0より古い場合、runscriptコマンドのパスは/Applications/Eggplant.app/runscriptです。

ノート

コマンドラインからrunscriptEggplantコマンドを実行する際に渡すオプションを指すために、私たちは_arguments_という言葉を使用します。その他、_options_や_flags_といった熟知の言葉もあります。

スクリプトへの入力として渡す値を指すために、私たちは_parameters_という言葉を使用します。コマンドラインからスクリプトを実行する際にパラメータを渡す方法についての詳細は、パラメータの渡し方を参照してください。

接続情報

RDPとVNC

以下のフラグを使用して、runscriptコマンドでVirtual Network Computing(VNC)またはRemote Desktop Protocol(RDP)のシステムアンダーテスト(SUT)の接続情報を指定します:

  • -host – スクリプトで使用する特定のSUTのホスト名またはIPアドレス。-host引数を渡すときは、カラーデプス、パスワード、ポート、ユーザ名、接続名を指定することもできます。
  • -connectionname – 新たに作成される接続の希望する名前。-hostフラグと併用して、-connectionnameフラグは接続のSUT識別名を提供します。この値は、connectioninfo関数が呼び出された場合にNameパラメータによって返されます。
  • -port – SUTに接続するソフトウェアのポート。これはVNCサーバーまたはRDP接続のポートで、ホストWindowsマシンのユーザー名とパスワードを提供します。
  • -username-password – SUTへのVNCサーバー接続の場合、通常はパスワードのみを提供する必要があります。特にUltraVNCを使用する場合など、稀にユーザー名が必要な場合もあります。RDP接続の場合、ホストWindowsマシンのユーザー名とパスワードを提供します。
  • -password64または-pass_code64 – 標準的な文字と非標準的な文字を含むパスワードやパスコードにBase64エンコーディングを使用する場合、-password64または-pass_code64のオプションを使用できます。Base64エンコーディングされたパスワードを渡すには-password64オプションを、Base64エンコーディングされたパスコードを渡すには-pass_code64オプションを使用します。パスワードやパスコードをBase64形式にエンコーディングする方法についての詳細は、Base64(エンコードとデコード)をご覧ください。
  • -colorDepth – ビューアウィンドウのSUTのカラーデプス:8、16、32。(デフォルト値:SUTのネイティブカラーデプス)
  • -type [RDP, VNC] – 接続の種類。"RDP"はRDP接続を指定し、Windows SUTのみで利用可能です。RDP接続はデフォルトでポート3389を使用します。"VNC"はVNC接続を指定します。デフォルトの接続タイプはVNCです。-typeパラメータを省略するとVNC接続になります。
  • -DefaultHeight-DefaultWidth – これらのパラメータは、SUT画面を表示するために指定し、その表示の高さと幅をピクセル単位で指定します。これらのオプションはRDP接続のみで使用され、つまり-typeオプションが含まれていてRDPに設定されている場合のみ使用されます。

例:

以下にrunscriptコマンドによるVNCとRDP接続の例を示す。

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript /Users/Alex/Docs.suite/Scripts/myTests/test2.script -host <IPアドレス> -port 5901 -username joeuser -password broncos
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Alex\Documents\MySuite.suite\Scripts\test2.script" -host <IPアドレス> -password "fast horses" -type rdp -DefaultWidth 1920 -DefaultHeight 1080
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script -host <IPアドレス> -port 5901 -username "joeuser" -password broncos

Sauce Labs

Sauce Labsのテストシステム(SUT)の接続情報を指定するために、runscriptコマンドと以下のフラグを使用します:

  • -SauceLabsConnectionName – この接続に割り当てる名前。(オプション)
  • -SauceLabsUser – 使用するSauce Labsアカウントのユーザー名。(必須)
  • -SauceLabsApiKey – アカウントのSauce Labs APIキー。(必須)
  • -SauceLabsDataCenter – 接続するSauce Labsデータセンター。(必須)

Sauce Labsデバイス接続のために:

  • -SauceLabsBrowserName – ブラウザの名前、例えば"Chrome"、"Firefox"など。(必須)
  • -SauceLabsPlatformName – オペレーティングシステムプラットフォームの名前、例えば"Windows 10"。(必須)
  • -SauceLabsUrl – ブラウザで接続するサイトのURL。(必須)
  • -SauceLabsBrowserVersion – 要求される特定のブラウザバージョン。(オプション)
  • -SauceLabsScreenResolution – ブラウザ画面のサイズを_width_ X _height_の形式で、例えば"1400x1050"。(オプション)

Sauce Labsブラウザ接続のために:

  • -SauceLabsDeviceName – デバイス識別子、例えば"Iphone 12"など。(必須)
  • -SauceLabsPlatformName – オペレーティングシステムプラットフォームの名前、例えば"iOS"、"Android"など。(必須)
  • -SauceLabsApp – デバイスで実行するアプリのURL。(オプション)

Sauce Labs Tunnel Proxiesオプションについて:

ノート

Sauce labs tunnelsは、Sauce Labsのブラウザとデバイスの両方に接続するために使用できます。

Sauce Labs Tunnel Proxy機能を使用するには、まずSauce Connect ProxyをEggplant Functionalと同じマシンにインストールして実行している必要があります。詳細はConnecting Using Sauce Connect Proxyをご覧ください。

  • -SauceLabsTunnelName – Sauce Labsに接続する際に使用するアクティブなSauce Connectトンネルの名前。(オプション)
  • -SauceLabsTunnelOwner – アクティブなSauce Connectトンネルを確立したSauce Labsユーザーアカウントの名前。(オプション)

例:

Linux with Sauce Labs Connection
runscript ~/phoneTests.suite/Scripts/galaxy.script -SauceLabsDeviceName "Samsung Galaxy S10" -SauceLabsPlatformName "Android" -SauceLabsUser "Graham52" -SauceLabsApiKey "7c0af918-bf09-3b2d-87d1-90c518a70c71" -SauceLabsDataCenter "us-west-1"

#licenser-password

commandlineoutput

  • -CitrixStorefront - 接続するCitrixドメイン。(必須)
  • -CitrixUsername - 使用するCitrixアカウントのユーザー名。(必須)
  • -CitrixPassword - Citrixアカウントのパスワード。(必須)
  • -CitrixApplication - 起動するアプリケーションまたはデスクトップ。(必須)
  • -CitrixScreenshotInterval - Citrix SUTの2回の連続キャプチャの間に待機する時間(ミリ秒)。(オプション)
  • -CitrixScreenResolution - Citrix SUTの解像度。(オプション)

例:

Windows with Citrix Connection
runscript.bat "C:\Users\EggplantUser\Documents\CtirixConnections.suite\Scripts\RunscriptCitrix.script" -CitrixStorefront "https://citrix.citrixdomain.com/Citrix" -CitrixUsername "EggplantUser" -CitrixPassword "NuggetsNation" -CitrixApplication "Windows Server 2019" -CitrixScreenshotInterval 400 -CitrixScreenResolution 1600X900
ノート

実行中のスクリプトからのconnectコマンド、またはスケジュール内の接続情報は、この接続を上書きします。この接続は開いたままですが、新しい接続が アクティブな 接続になります。

モバイル機器

先端

初めてモバイルデバイスに接続する場合は、 モバイルデバイスに接続する">および該当する「...モバイルデバイスでの作業」トピックをお読みになることを強くお勧めします。モバイルデバイスのテストに関する重要な概念(Androidモバイルデバイスでの作業やiOSモバイルデバイスでの作業など)については、「モバイルデバイスへの接続」と該当する「モバイルデバイスでの作業」のトピックをお読みください。

-paramvalue

  • -AndroidDeviceId - テストするAndroidデバイスのデバイスID。以下の注を参照。
ノート

接続されている端末が1台の場合は、AndroidDeviceIdに "connected "を指定することで、Eggplant Functionalが自動的にその端末に接続します。複数の端末が接続されている場合は、AndroidDeviceIdの指定が必要です。Device IDの取り扱いについては、Android Mobile Device IDの取得および、Androidエミュレータへの接続をご参照ください。

x-reportfailures

  • -iOSDeviceUDID - テストするiOSデバイスの一意のデバイスID。以下の注意事項を参照してください。
  • -iOSDeveloperCertificatePath - iOS デベロッパー証明書の完全修飾ファイル名。
  • -iOSDeveloperCertificatePassword - iOS デベロッパー証明書のパスワード。
  • -iOSProvisioningProfilePath - 適切な iOS Provisioning Profile の完全修飾ファイル名です。
  • -iOSDeveloperDiskPath - モバイルデバイスの Developer Disk を含むトップレベルのディレクトリへのパス。
ノート

1つのデバイスのみがシステムに接続されている場合、iOSDeviceUDIDを "connected" と指定すると、Eggplant Functionalは自動的にそのデバイスに接続します。複数のデバイスが接続されている場合、iOSDeviceUDIDパラメータが必要です。デバイスIDの操作の詳細については、iOSモバイルユニークデバイスID(UDID)の取得を参照してください。

ノート
  • Apple Provisioning Profiles、Developer Certs、およびDeveloper Diskの詳細については、Before You Startを参照してください。

例:

Androidエミュレータにモバイルデバイスを接続したMac

最初の例では、Device ID "emulator-5554 "のAndroidエミュレータに接続してスクリプトを実行している:

Applications/Eggplant.app/Contents/MacOS/runscript ~/Documents/AndroidConnectCmd.suite/Scripts/Runscript.script -AndroidDeviceId "emulator-5554" -CommandLineOutput yes
自動検出を使用した物理的Androidモバイル・デバイスに接続する

次の例では、Eggplant Functionalが動作しているシステムに現在接続されているAndroidモバイル・デバイスに接続するために、自動検出を使ってスクリプトを実行する:

/Applications/Eggplant.app/Contents/MacOS/runscript ~/Documents/AndroidConnectCmd.suite/Scripts/Runscript.script -AndroidDeviceId "connected"
明示的なUDIDを持つ物理的なiOSモバイル・デバイスへの接続

この例では、開発者証明書とプロファイルに関連するすべての必要なパラメータを含む、物理的なiOSモバイルデバイスに接続する方法を示します。

Applications/Eggplant.app/Contents/MacOS/runscript \
main.script \
-iOSDeviceUDID "00008030-00134C6554E8802E" \
-iOSProvisioningProfilePath "/home/sally/Desktop/ios/myteam.mobileprovision" \
OsdeveloperCertificatePath "/home/sally/Desktop/ios/MyCert.p12" \
-iOSDeveloperCertificatePassword "<my-cert-password>" \
-iOSDeveloperDiskPath"/home/sally/Desktop/ios/DeviceSupport"\
-CommandLineOutput YES

WebDriver接続情報

runscriptコマンドで以下のフラグを使用してWebDriver接続の接続情報を指定します:

  • -webBrowser – 特定のブラウザーへのWebDriver接続を開きます。必須。
  • -webHost – WebDriver接続のホスト。-hostが指定されていない場合は必須。
  • -webPort – WebDriver接続を作成する際に使用するポートを定義します。ポートが指定されていない場合、ポート4444が使用されます。オプション。

#kanchor71

Mac

/Applications/Eggplant.app/Contents/MacOS/runscript /Users/Bob/Selenium.suite/Scripts/test1.script -webBrowser "Chrome" -webHost "10.211.55.4" -webPort "4445"

Windows

"C:\Program Files\Eggplant\runscript.bat" C:\Users\Bob\Documents\Selenium.suite\Scripts\test1.script" -webBrowser "Chrome" -webHost "10.211.55.4" -webPort "4445"

Linux

runscript ~/Documents/Selenium.suite/Scripts/test1.script -webBrowser "Chrome" -webHost "10.211.55.4" -webPort "4445"

追加の引数

runscriptコマンドを使用してパスワードを送信、ログの格納場所を制御、パラメータを渡すなどができます。

-CommandLineOutput

使用法: スクリプトログ(実行ウィンドウのログ領域に表示されるデータ)の出力を制御します。

有効な値: yesまたはno。スクリプトログを出力するには、-CommandLineOutput引数をyesに設定します。この出力をオフにするには、-CommandLineOutput引数をnoに設定します。

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript /Users/Alex/appTests.suite/Scripts/test3.script -CommandLineOutput no
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Alex\Documents\appTests.suite\Scripts\test2.script" -CommandLineOutput no
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script -CommandLineOutput no

また、スクリプト内でCommandLineOutputグローバルプロパティを設定することもできます。スクリプト内で変更されたグローバルプロパティは、常に初期設定を上書きします。

ノート

標準エラー(stderrまたはerror)に送られる出力は常に表示されます。コマンドラインから実行する際の出力をより細かく制御するために、スクリプト内で次の構文を使用できます:

write "THIS IS SOME OUTPUT" to error

-DefaultDocumentDirectory

使用法: 相対ファイルパスの開始ディレクトリを指定します。たとえば、ヘルパースイートのパスです。

#kanchor68

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript -DefaultDocumentDirectory ~/Documents/EggplantDocs
Windows
"C:\Program Files\Eggplant\runscript.bat" -DefaultDocumentDirectory "C:\Users\Elizabeth\Documents\eggPlantTests"
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script -DefaultDocumentDirectory ~/Documents
ノート

これは、Eggplant Functionalの一般的な設定であるDefault Suite Directoryと同じです。

-GlobalResultsFolder

使用法: スクリプト結果が保存されるフォルダの名前を設定します。フォルダのパスは絶対パスでも、スクリプトのスイートに対する相対パスでも構いません。

#-param

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript /Users/Alex/Docs.suite/Scripts/test2.script -GlobalResultsFolder ~/MyResults
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Alex\Documents\MySuite.suite\Scripts\smoketestMain.script" -GlobalResultsFolder "C:\Users\Alex\Documents\ExecutionResults\SmokeTest"
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script ~/Documents/appTests.suite/Scripts/test2.script -GlobalResultsFolder ~/MyResults
ノート

GlobalResultsFolderの設定は一時的なもので、現在のEggplant Functionalセッションにのみ適用されます。既に開始されたスクリプトとその結果には影響しません。また、スクリプトを実行する前にGlobalResultsFolderを設定する必要があります。なぜなら、スクリプトが実行を開始すると、そのログの場所は固定されます。GlobalResultsFolderを設定すると、結果はもうスイートに保存されないため、スイートウィンドウでそれらを表示することはできません。

-LicenseKey, -LicenseUser

使用法: Eggplant Functionalの使用に必要なライセンスキーとユーザーを追加します。

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript -LicenseKey <license_key> -LicenseUser <user_name>
Windows
"C:\Program Files\Eggplant\runscript.bat" -LicenseKey <license_key> -LicenseUser <user_name>
Linux
runscript -LicenseKey <license_key> -LicenseUser <user_name>

-LicenserHost

使用法: -LicenserHost引数を使用して、Eggplant Functionalライセンスサーバーの場所を指定します。 -LicenserHost引数の後に、ライセンスサーバーが稼働しているマシンのIPアドレスまたはホスト名を入力します。 Eggplant License Registry panelでライセンサーホストを指定していても、コマンドラインからスクリプトを実行するためには、この引数を含める必要があるかもしれません。

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript /Users/Alex/Docs.suite/Scripts/test2.script -LicenserHost 10.1.11.105
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Alex\Documents\MySuite.suite\Scripts\test2.script" -LicenserHost bkwinsPC
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script ~/Documents/appTests.suite/Scripts/test2.script -LicenserHost 10.1.11.163
ノート

この引数は、Reprise License Manager(RLM)とTeam License Server(TLS)の両方でコマンドラインから実行するためのほとんどの環境で必要です。

-LicenserPassword

使用方法: RLMをパスワードが必要に設定している場合はこのフラグを使用します。

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript /Users/Fred/Docs.suite/Scripts/bigtest.script -LicenserPassword <password>
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Fred\Documents\MySuite.suite\Scripts\bigtest.script" -LicenserPassword <password>
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script ~/Documents/appTests.suite/Scripts/bigtest.script -LicenserPassword <password>
ノート

この引数は、Reprise License Manager(RLM)をパスワードが必要に設定した場合にのみ必要です。

-param (-p)

使用方法: -param 引数はスクリプトにパラメータを渡します。スクリプトの名前の前後どちらにも -param を使用できます。スクリプト内の各パラメータの前には必ず -param 文字列が必要です。-p は同じ引数の省略形です。これらは互換性があります。

ノート

-param 引数(最後に "s" がない)は、古い -params 引数とは 同じではありません

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript ~/Documents/appTests.suite/Scripts/test1.script -param "SUT1" -param "phonebook.txt"
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Alex\Documents\MyTests.suite\scripts\test1.script" -p "SUT1" -p "phonebook.txt"
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script -param "SUT1" -param "phonebook.txt"

-paramValue (-pv)

使用方法: -paramValue 引数(またはその省略形、-pv)はリスト、プロパティリスト、または他の複雑なパラメータ値をスクリプトに渡すために使用できます。SenseTalk の Value 関数が提供される値に適用され、その評価された値がスクリプトに渡されます。

-paramValue-param をコールで自由に混在させることができます。-param または -p の後に続く値はスクリプトにリテラル文字列として渡されます。paramValue または -pv の後に続く値はSenseTalkの式として評価され、評価された値がスクリプトに渡されます。

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript ~/Documents/appTests.suite/Scripts/test1.script -paramValue "[SUT1,SUT2]" -paramValue "{x:34, y:125}"
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Alex\Documents\MyTests.suite\scripts\test1.script" -p "SUT1" -pv "[1,2,3,5,9]"
Linux
runscript ~/MyTests.suite/Scripts/test1.script -paramValue "the international time" -pv '{name:"Joe User", id:"143G-2", password:"top secret"}'

-repeat

使用方法: 指定した回数だけ実行しているスクリプトを繰り返します。

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript /Users/Alex/myTests.suite/Scripts/test1.script -repeat 4
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Alex\Documents\MyTests.suite\Scripts\test1.script" -repeat 4
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script -repeat 4

-ReportFailures

使用方法: スクリプトの実行後に、コマンドラインに失敗したスクリプトとスイートの数を報告します。有効な値: yes/no。デフォルト値: yes。Eggplant Functionalに成功したスクリプトとスイートの数をコマンドラインに報告させたい場合は、それをnoに設定します。

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/runscript /Users/Alex/Docs.suite/Scripts/test1.script -ReportFailures yes
Windows
"C:\Program Files\Eggplant\runscript.bat" C:\Users\Alex\Documents\MySuite.suite\Scripts\test1.script" -ReportFailures yes
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script -ReportFailures yes

-ScaleFactors

使用法: ScaleFactorsグローバルプロパティを設定します。

値: スケールを示す単一の値、スケールの範囲、またはその両方を含む文字列。デフォルト値:空(効果的に1.0)。

例:

Mac
/Applications/Eggplant.app/Contents/MacOS/Eggplant /Users/Elizabeth/Desktop/Tests.suite/Scripts/CLI.script -ScaleFactors "0.5..1.5 by 0.1"
Windows
"C:\Program Files\Eggplant\runscript.bat" "C:\Users\Alex\Documents\appTests.suite\Scripts\test2.script" -ScaleFactors "0.5 to 1.5 by 0.5"
Linux
runscript ~/Documents/appTests.suite/Scripts/test1.script -ScaleFactors "0.5 to 1 by 0.1"
ノート

Eggplant Functionalが画像をそのオリジナルサイズで検索するためには、スケールファクターに1が含まれていなければなりません。