SUT情報と制御
これらのコマンドと関数は、Eggplant Functionalからテスト対象システム(SUT)に接続したり、接続やその他のSUT情報についての情報を収集したりするためにSenseTalkスクリプトを使用することができます。
AllConnectionInfo
Function
振る舞い: 全ての接続プロパティリストを返します。戻り値には、セッション中にConnectコマンドを使用して作成された任意の接続の接続プロパティリストも含まれます。
パラメータ: なし。
戻り値: 接続リスト内の全てのSUTの接続プロパティリストの リスト。例えば:
[{AndroidDevice:"True", Availability:"Unknown", Bonjour:"False", ColorDepth:"0", Connected:"False", DeviceSerialNumber:"b6dcc079", Name:"GalaxyS5", PortNum:"5900", Reverse:"False", ServerID:"SM-G900V (b6dcc079)", Status:"Not Connected", Type:"vnc", Visible:"False"},{Availability:"Unknown", Bonjour:"False", ColorDepth:"0", Connected:"False", Name:"Linux", PortNum:"5900", Reverse:"False", ScreenSize:[1024,768], ServerID:"192.168.120.137", Status:"Not Connected", Type:"vnc", Visible:"False"}]
例:
put the AllConnectionInfo into HostList //AllConnectionInfo関数の戻り値をHostListという名前の変数に格納します
関連:
Disconnect
コマンド
振る舞い: SUTとの接続を開く、または接続済みのSUTをアクティブなSUTにします。接続プロパティリストを渡すと、設定したプロパティが上書きされます。
パラメータ: ホスト名、IPアドレス、または接続リストからの表示名。または、接続プロパティリストのいずれか。
SUTが接続リストにない 場合、または接続リストの情報を上書きする必要がある場合は、接続プロパティリストを渡すことができます。コマンドラインまたはスクリプト開発マシンとは異なるマシンからスクリプトを実行する場合、実行は通常、接続リストにアクセスがありません。そのため、完全な接続プロパティリストを使用してConnect
コマンドを定期的に使用することを強く推奨します。
Syntax:
Connect nameOrServerID {, port {, password}} {, connectionPropertyList}
Connect connectionPropertyList
最初の構文が使用されると、_nameOrServerID_は、接続リスト内の既存の接続の名前、または作成される接続の特定の種類に適したServerIDのどちらかであるべきです。これにはオプションで_port_番号、_password_および/または追加のプロパティを供給する_connectionPropertyList_が続くことがあります。2つ目の構文は単に_connectionPropertyList_を提供します。
Eggplant Functionalは、以下のようないくつかの異なるタイプのSUT接続をサポートしています。接続タイプに関する追加情報は、次のリストのとおりです。
- VNCサーバー -
type:"VNC"
または指定なし(これがデフォルトのタイプです) - RDPサーバー -
type:"RDP"
- Sauce Labsのブラウザとデバイス -
type:"SauceLabs"
- Citrixサーバー -
type:"Citrix"
- Single System - 関連付けられた
タイプ
はありません。Single Systemタイプの接続を「接続リスト」に作成して保存し、その名前を connect
コマンドで渡す必要があります。詳細については、以下の Single System Connectionsを参照してください。 - スクリーンショットファイル -
type:"Screenshot"
- チュートリアルSUT - _nameOrServerID_として
"TutorialSUT"
を使用します。これはトレーニングと探索のためのダミーのSUTです。
VNCサーバーやTutorial SUT以外に接続する場合、上記のリストで示されているように、少なくともtype
プロパティを提供する_connectionPropertyList_を使用する必要があります。他の接続プロパティは、接続の種類により異なります。
Eggplant Automation Cloudデバイスへの接続: Connect
コマンドを使用してEggplant Automation Cloudにホストされているデバイスに接続する情報については、Eggplant Automation Cloudテストシステムへの接続を参照してください。
VNCおよびRDP接続
VNCおよびRDP接続の接続プロパティは次のとおりです(すべてオプション、指定された場合を除く):
- Type: RDP接続の場合は"RDP"、VNC接続の場合は"VNC"(または省略)。SUTに接続するための方法。(デフォルト値: VNC。)
- ServerID: ホスト名、IPアドレス、またはConnection List Display Name。これはVNC接続の唯一の必須プロパティです。
- PortNum: SUT上のサーバーが使用するポート番号。(デフォルト値: VNCの場合は5900; RDPの場合は3389。)
- Username: RDP経由で接続する際のWindowsユーザー名。(デフォルト値: なし。)
- Password: VNC接続を行う場合はVNCサーバーのパスワード、RDP接続を行う場合はWindowsユーザーのパスワード。(デフォルト値: なし。ただし、RDP接続ではパスワードが必要です。)
- sshHost: SSH接続をホストしているコンピューターのホスト名またはIPアドレス。(デフォルト値: なし。)
- sshUser: SSHホスト上のユーザーアカウント(デフォルト値: なし。)
- sshPassword: SSHサーバー上のユーザーアカウントのパスワード。(デフォルト値: なし。)
- Visible: Viewerウィンドウが接続時に自動的に開くかどうかを指定します。(有効な値: YesまたはNo。)
- ColorDepth: Viewerウィンドウ内のSUTの色深度: 8, 16, 32。(デフォルト値: SUTのネイティブ色深度。)
- Height: RDP接続タイプのみに適用し、ピクセル単位でViewerウィンドウの高さを指定します。(デフォルト値: 768。)
- Width: RDP接続タイプのみに適用し、ピクセル単位でViewerウィンドウの幅を指定します。(デフォルト値: 1024。)
- scaleRemoteScreen: YESに設定すると、モバイルVNCサーバーを各次元で50パーセントスケーリングします。このオプションは、大画面または高解像度のモバイルデバイスを使用する場合に優れたパフォーマンスを提供します。
- blendScaledScreen: YESに設定すると、
scaleRemoteScreen
を使用している場合にピクセル色をブレンドします。このオプションは、古いスクリプトや画像との後方互換性のためだけに使用するべきです。
- blendScaledScreen: YESに設定すると、
- monitorCount: RDP接続のモニター数を指定します。値は1から5の間である必要があります。
Sauce Labs接続
Sauce Labs接続を行う場合、ブラウザに接続するためのBrowserName
プロパティか、デバイスに接続するためのDeviceName
プロパティのいずれかを含める必要があります。
Sauce Labs接続の両方のタイプの接続プロパティは以下のとおりです:
- Type: "SauceLabs"(必須)
- Name: この接続に割り当てる名前。(オプション - 指定されない場合、"Sauce Labs 1"のような名前が割り当てられます)
- User: 使用するSauce Labsアカウントのユーザー名。(必須)
- APIKey: アカウントのSauce Labs APIキー。(必須)
- DataCenter: 接続するSauce Labsデータセンター。(必須)
- Visible: Viewerウィンドウが接続時に自動的に開くかどうかを指定します。(オプション - 有効な値: YesまたはNo)
ブラウザ接続の場合:
- BrowserName: ブラウザの名前、例:"Chrome"、"Firefox"など。(必須)
- PlatformName: オペレーティングシステムのプラットフォームの名前、例:"Windows 10"。(必須)
- URL: ブラウザで接続するサイトのURL。(必須)
- BrowserVersion: 要求される具体的なブラウザのバージョン。(オプション)
- ScreenResolution: ブラウザのスクリーンサイズ。形式は_width_ X height、例:"1400x1050"。(オプション)
デバイス接続の場合
- DeviceName: デバイス識別子、例:"Iphone 12"など。(必須)
- PlatformName: オペレーティングシステムのプラットフォームの名前、例:"iOS"、"Android"など。(必須)
- App: デバイスで実行するアプリのURL。(必須)
Sauce Labs Tunnel Proxies オプション
Sauce labs tunnelsは、Sauce Labsのブラウザとデバイスの両方に接続するために使用できます。
Sauce Labs Tunnel Proxy機能を使用するには、まずSauce Connect ProxyをEggplant Functionalと同じマシンにインストールし、実行しておく必要があります。詳細は Connecting Using Sauce Connect Proxyをご覧ください。
- Tunnel Name: Sauce Labsに接続する際に使用するアクティブなSauce Connectトンネルの名前。(オプション)
- Tunnel Owner: アクティブなSauce Connectトンネルを確立したSauce Labsユーザーアカウントの名前。(オプション)
Citrix接続
Citrix接続を行う際には、以下のプロパティが使用されます:
- Type: "Citrix" (必須)
- Name: この接続に割り当てる名前。(オプション – 与えられない場合、"Citrix 1"のような名前が割り当てられます)
- User: Citrix接続のユーザー名。(必須)
- Password: Citrix接続のユーザーパスワード。(必須)
- StorefrontURL: CitrixストアフロントのURL。(必須)
- Application: Citrix StorefrontアプリケーションにリストされているCitrixアプリケーションのタイトル。(必須)
- Visible: 接続時にビューアウィンドウが自動的に開くかどうかを指定します。(オプション – 有効な値: YesまたはNo)
- ScreenResolution: Citrix SUTの解像度。(オプション - デフォルトは1600x900)
- ScreenshotInterval: Citrix SUTのスクリーンキャプチャを行う間隔(ミリ秒)。(オプション - デフォルトは400)
----------sensetalk
Eggplant Functionalを実行しているシステムに直接接続されているモバイルデバイスに接続する場合、必要なプロパティは接続されるデバイスのOSに依存します。現在、Eggplant FunctionalはiOSおよびAndroidデバイスに対してモバイルデバイス接続をサポートしています。
モバイルデバイスをEggplant Functionalに初めて接続する場合は、モバイルデバイスのテストに関連する一般的な概念については、モバイルデバイスへの接続を参照することをお勧めします。また、テストするデバイスの種類によっては、Androidモバイルデバイスでの作業またはiOSモバイルデバイスでの作業を参照し、詳細を確認する必要があります。
関連:
- Type: "Screenshot" (必須)
AllConnectionInfo
関数- Eggplant Automation Cloudデバイスへの接続:
Connect
コマンドを使用してEggplant Automation Cloudにホストされているデバイスに接続する情報については、Eggplant Automation Cloudテストシステムへの接続を参照してください。
システムに1つのデバイスだけが接続されている場合、"connected" のデバイスIDを指定することで、Eggplant Functionalは自動的にそのデバイスに接続します。複数のデバイスが接続されている場合は、このフィールドは必須です。デバイスIDの取得に関しては、AndroidモバイルデバイスIDの取得および Androidエミュレータへの接続 を参照してください。
iOSデバイス接続の場合:
- Type: "Screenshot"(必須)
- Name: この接続に割り当てる名前(オプション - 指定しない場合、名前が割り当てられます)
- DeviceUDID: 接続するデバイスのユニークなデバイスID(必須 - 下記の注意事項を参照)
- ProvisioningProfilePath: プロビジョニングプロファイルが含まれるファイルの完全修飾名(必須)
- DeveloperCertificatePath: 開発者証明書が含まれるファイルの完全修飾名(必須)
- DeveloperCertificatePath: 開発者証明書のパスワード(必須)
- DeveloperDiskPath: 選択したハードウェアプラットフォームのすべての開発者ディスクを含むトップレベルディレクトリへのパス。詳細は「開発者ディスクを取得する」を参照してください(必須)
もしシステムに接続されているデバイスが1台だけの場合、DeviceUDIDを「connected」と指定するとEggplant Functionalは自動的にそのデバイスに接続します。もし複数のデバイスが接続されている場合、このパラメーターは必須です。Device UDIDの使用方法の詳細については「iOSモバイルの一意のデバイスID(UDID)の取得」を参照してください。
Single System接続
connect コマンドで使用する前に、「接続リスト」の add/edit connection パネルを使用して、Single System SUT 接続を作成する必要があります。``同様に、接続リストを使用して単一システム接続を変更する必要があります。
Connect
コマンドを使用して、Single System接続を確立または活動化することができますが、最初に接続リストを使用して接続を作成し、保存する必要があります。接続が [接続] リストに保存されると、接続の名前を渡すことで、スクリプト内の connect
コマンドで使用できます。これは、Display Name または Display Name が指定されていない場合の Server フィールドの値です。詳細については、Using the Eggplant Functional Connection ListおよびSingle System Specific Optionsを参照してください。
シングルシステム接続を使用するSenseTalk connect
コマンドの記述方法の例をスクリプトで確認するには、以下の例(名前別) Connect
コマンドの例) を参照してください。
スクリーンショット接続
スクリーンショット接続を開くために必要なのは、ローカルコンピュータ上のスクリーンショットイメージへのパスだけです。静的なイメージとのインタラクションは可能ではありませんが、スクリーンショット接続は画像をキャプチャしたり、画像とテキストの検索プロパティを試すために非常に便利です。
RefreshScreen
コマンド- Name: スクリーンショットイメージファイルへのフルパス。(必須, "Name"プロパティとして、または最初の(ラベルなし)パラメータとして)
すでにSUTに接続している場合、ConnectionInfo
functionで関連する接続プロパティリストを取得できます。
Connect
コマンド
例 (名前で):
Connect "Windows 7 VM" // "Windows 7 VM"という名前の保存されたSUTに接続するか、アクティブな接続を切り替えます。
例 (VNC):
Connect {serverID: "10.211.55.4", portNum: "5900", Visible: "Yes"} // 指定されたIPとポート番号を使用してSUTに接続します。スクリプトをGUIで実行すると、VisibleプロパティがSUTのビューアウィンドウを前面に出す原因となります。