モバイル制御の操縦

Tosca XScan または画像ベースのテスト自動化で作成した Mobile Engine3,0xOS Modulesを使用して、モバイル コントロールを操縦することができます。

xOSモジュールを使用すると、iOSおよびAndroidデバイス上のネイティブ、ハイブリッド、およびモバイルウェブアプリケーションを自動化できます。一つのプラットフォームでxOSモジュールをスキャンし、それを使用して他のプラットフォームのコントロールを自動化できます。例えば、Androidデバイス上の xOSモジュールをスキャンし、それをテストケースで使用してiOSデバイス上のコントロールを自動化します。

この章では、以下の方法について説明します:

Mobile Engine 3,0 がモバイルアプリケーション内の制御をサポートしていない場合は、 Vision AI を使用してこの制御するをスキャンして操縦できます。その方法については、こちらのナレッジベース記事を参照してください。

前提条件

ネイティブアプリケーションでコントロールの操作

ネイティブアプリケーションを自動化するために、以下のモバイル制御を操縦することができます。

Androidネイティブアプリケーションでは、 Mobile Engine 3.0 が自動的にスクロールしてコントロールを見つけます。自動スクロールを無効にするには、ステアリングパラメータScrollingBehavior を使用します。

これを行うには、以下の手順に従ってください。

  1. 自動スクロールを無効にしたいモジュールのプロパティタブを開いてください。

  2. プロパティタブで、モジュールを右クリックし、ミニツールバーから ステアリングパラメータ作成オプションを選択してください。

  3. Name 列に ScrollingBehavior と入力します。

  4. Value 列に None と入力します。

ネイティブモバイルAutomationでは、ユーザーシミュレーションはサポートされません。ネイティブアプリケーションのユーザーインタラクションをシミュレートするには、 SendKeys キーボードコマンドをご使用ください。

ボタン

chapter "ボタン" で説明されているネイティブ Android および iOS アプリケーション内のボタンを操縦します。

ButtonSelector

ButtonSelector は複数のラジオボタンで構成されています。

  • AndroidのRadioGroup

  • iOSのUISegmentedControl

Tosca XScanButtonSelector 用のモジュール属性を作成します。

chapter "RadioButton" および chapter "コントロールグループ" で説明されているネイティブ Android および iOS アプリケーションで ButtonSelector を操縦します。

ButtonSelector 制御をxOS モジュールとして使用するには、 iOSアプリケーションのコードでその accessibilityLabel を設定する必要があります。

チェックボックス

ネイティブのAndroidおよびiOSアプリケーションにおいて、チェックボックスを操縦する方法は、 chapter "チェックボックス" に記載されています。

DatePicker

DatePicker コントロールでは日付を選択できます。

DataType 文字列を使用する場合の、正しい日付形式は DD.MM.YYYY.です。動的日付式 {DATE} または DataType Date を使用する場合、入力形式はお使いの Tricentis Tosca の設定によって異なります。

可能なアクションモードは入力検証バッファです。

モバイル DatePicker のさまざまな使用例

画像

ネイティブのAndroidおよびiOSアプリケーションにおいて、 Images を操縦する方法は、 chapter "画像" に記載されています。

ネイティブのiOS画像において、 Property enabled の値は常に True です。

ItemSelector

ItemSelector とは、次を意味します。

  • Androidデバイス上のスピナー

  • iOSデバイス上のUIPickerView

Name または Index プロパティを使用して、AndroidやiOSのネイティブアプリケーションで ItemSelectors を操縦します。

iOSの ItemSelector のさまざまな使用例

Label

Label とは、次を意味します。

  • Androidデバイス上のTextView

  • iOSデバイス上のUILabel

ラベルの操縦方法は、 chapter "ラベル" で説明されています。

ListView

ListView とは、次を意味します。

  • Androidデバイス上のListView

  • iOSデバイス上のUITableView

シングルラインビューについては、AndroidとiOSのネイティブ・アプリケーションで、以下の説明に従って ListViewを操縦します 。しかし、エントリーが選択されているか確認するための ActionMode はありません。

ListView コントロールをxOS モジュールとして使用するには、 iOSアプリケーションのコード内で accessibilityLabel を設定する必要があります。

PickerWheel

PickerWheel とは、 DatePickerのホイールのことで、iOSデバイスで日付を選択するために使用されます。

PickerWheel コントロールの次の要素を操作できます。

  • 時間

可能なアクションモードは、入力バッファ検証です。

以下の例では、 PickerWheel の時刻を 11:15 、日付を 1988年10月23日に設定しています。

iOS上のPickerWheel コントロール

ラジオボタン

AndroidとiOSのネイティブ・アプリケーションで、以下の説明に従って RadioButtons を操縦します chapter "RadioButton"

SearchBar

iOSアプリケーションの SearchBar は、次の要素で構成されています。

  • Tosca XScan で、 SearchBar として表示される検索ボックスエリア。このコントロールを以下の説明に従って操縦します chapter "テキストボックス"

  • chapter "ボタン" で説明されているように操縦を可能にするボタンです。

Androidアプリケーションの SearchBar は、次の要素で構成されています。

  • Tosca XScanテキストボックスとして表示される検索ボックスエリアです。chapter "テキストボックス" で説明されているようにこの制御を操縦します。

  • Tosca XScan にボタンまたは画像として表示されるボタンです。chapter "ボタン" または chapter "画像" で説明されているとおりに操縦します。

スライダー

スライダーとは、次のものです。

  • Androidデバイス上のSeekBar

  • iOSデバイス上のUISlider

ネイティブのAndroidおよびiOSアプリケーションでスライダーを自動化することができます。標準のスライダーのみがサポートされています。

Value 列には、0から100の整数を入力する必要があります。この値はスライダー範囲のパーセンテージです。例えば、スライダーの値が0から1000の範囲にある場合、 Tosca CommanderValue を50に設定すると、スライダーの値が500に設定されることになります。

一部のデバイスやアプリケーションでは、デバイスの画面解像度やアプリケーションの実装により、スライダー全体が表示されない場合があります。この場合、 Tricentis Tosca によって選択された値は、スライダー上の値と若干異なる場合があります。デバイスの画面に表示されている内容に合わせて入力の値を調整してください。

以下の例では、スライダーの値を 88 に設定しています。次のテストステップでは、 Tricentis Tosca はActionMode 確認を使用してこの値を検証し、 Slider有効になるまで待機します。

スライダーの値を 88 に設定

Switch

Switch とは、Androidデバイス上の Switch を指します。

chapter "チェックボックス" で説明されているネイティブ Android アプリケーション内のスイッチを操縦します。

TabBar

TabBar とは次を意味します。

  • Androidデバイス上のTabHost

  • iOSデバイス上のUITabBar

ネイティブ Android および iOS アプリケーションの TabBars は、 chapter "タブコントロール" で説明されているように操縦します。

テキストボックス

テキストボックスとは、次を意味します。

  • Androidデバイス上のEditText

  • iOSデバイス上の UITextFieldまたはUISecureTextField

chapter "テキストボックス" で説明されているネイティブ Android および iOS アプリケーション内の TextBoxes を操縦します。

モバイル Web アプリケーションで制御を操縦する

モバイルWebアプリケーションでは、次を操作できます。

モバイル Web アプリケーションの自動化には、 chapter "ステアリングコントロール" で説明されているように、次の標準 HTML コントロールを操縦できます。

ステアリングパラメータ ScrollingBehavior を使用すると、スクロール領域を調整して画面上の HTML制御の位置を定義できます。スクロール動作を設定の詳細情報は see chapter "Center (標準)" をご覧ください。

モバイルWebAutomationでは、 UseXBrowserForMobileTCP を使用する場合にのみユーザーシミュレーションがサポートされることにご注意ください。別の方法として、単一のキーボードコマンドと SendKeys キーボードコマンドを組み合わせて使用することもできます。

{CLICK} アクションのためにフォールバックメカニズムを有効にします

制御の上で {CLICK} 操作を使用し、ステアリングの問題が発生した場合は、クリックの代わりにタップをシミュレートすることができます。

これを行うには、テストケースに TCP TapByCoordinates を作成し、その ValueTRUE に設定します。

この TCP を TRUE に設定すると、 Mobile Engine 3.0 はコントロールの座標を Appium Server に渡します。その後、 {CLICK} のアクションを指定したコントロールのタップをシミュレートします。