Mobile Controls steuern
Mit den xOS-Modulen der Mobile Engine 3.0, die Sie über den Tosca XScan oder die Image-Based Test Automation erstellt haben, können Sie mobile Controls steuern.
Mit xOS-Modulen können Sie native, hybride und mobile Webapplikationen auf iOS- und Android-Geräten automatisieren. Sie können xOS-Module auf einer Plattform aufzeichnen und diese dann zum Automatisieren von Controls auf der anderen Plattform verwenden. So zeichnen Sie beispielsweise ein xOS-Modul auf einem Android-Gerät auf und verwenden es dann in einem Testfall, um die Controls auf einem iOS-Gerät zu automatisieren.
Dieses Kapitel beschreibt Folgendes:
![]() |
Wenn die Mobile Engine 3.0 ein Control in Ihrer mobilen Applikation nicht unterstützt, können Sie Vision AI verwenden, um dieses Control aufzuzeichnen und zu steuern. Informationen dazu finden Sie in diesem Artikel der Knowledge Base. |
Voraussetzungen
-
Für alle nativen iOS-Controls müssen Sie die Accessibility-Eigenschaften in Xcode festlegen.
-
Wenn Sie mobile Web-Controls unter iOS 12 steuern wollen, müssen Sie Ihre mobile Webapplikation vorbereiten.
Controls in nativen Applikationen steuern
Um native Applikationen zu automatisieren, können Sie die folgenden mobilen Controls steuern:
-
Snackbar auf Android
![]() |
In nativen Android-Applikationen scrollt die Mobile Engine 3.0 automatisch, um die Controls zu finden. Sie können das automatische Scrollen mit dem Steuerungsparameter ScrollingBehavior deaktivieren. Führen Sie hierzu die folgenden Schritte aus:
|
![]() |
Sie können nur native Controls ohne Benutzersimulationen oder den Tastaturbefehl SendKeys verwenden. |
Steuern Sie Buttons in nativen Android- und iOS-Applikationen wie hier beschrieben: Kapitel "Button".
Ein ButtonSelector besteht aus mehreren RadioButtons:
-
RadioGroup auf Android
-
UISegmentedControl auf iOS
Der Tosca XScan erstellt ein Modulattribut für den ButtonSelector.
Steuern Sie ButtonSelectors in nativen Android- und iOS-Applikationen wie hier beschrieben: Kapitel "RadioButton" und Kapitel "Control-Gruppen".
![]() |
Um das ButtonSelector-Control als xOS-Modul zu verwenden, müssen Sie sein accessibilityLabel im Code einer iOS-Applikation festlegen. |
Steuern Sie CheckBoxes in nativen Android- und iOS-Applikationen wie hier beschrieben: Kapitel "CheckBox".
Mit dem DatePicker-Control können Sie Daten auswählen.
Wenn Sie den DataType String verwenden, lautet das richtige Datumsformat TT.MM.JJJJ. Wenn Sie die dynamischen Datumsausdrücke {DATE} oder den DataType Date verwenden, hängt Ihr Eingabeformat von Ihren Einstellungen in Tricentis Tosca ab.
Mögliche Aktionen sind Input, Verify und Buffer.
Beispiel für unterschiedliche Verwendungen für den mobilen DatePicker
Steuern Sie Images in nativen Android- und iOS-Applikationen wie hier beschrieben: Kapitel "Image".
Für native iOS-Images ist der Wert Property enabled immer True.
Ein ItemSelector bezieht sich auf:
-
Spinner auf Android-Geräten
-
UIPickerView auf iOS-Geräten
Steuern Sie ItemSelectors in nativen Android- und iOS-Applikationen mit der Eigenschaft Name oder Index.
Beispiele für die unterschiedliche Verwendung für den ItemSelector auf iOS
Ein Label bezieht sich auf:
-
TextView auf Android-Geräten
-
UILabel auf iOS-Geräten
Steuern Sie Labels wie hier beschrieben: Kapitel "Label".
Eine ListView bezieht sich auf:
-
ListView auf Android-Geräten
-
UITableView auf iOS-Geräten
Für die einzeilige Ansicht steuern Sie ListViews in nativen Android- und iOS-Applikationen wie hier beschrieben: Kapitel "ComboBox". Es gibt jedoch keine Aktion, um zu überprüfen, ob ein Eintrag ausgewählt ist.
![]() |
Um das ListView-Control als xOS-Modul zu verwenden, müssen Sie sein accessibilityLabel im Code einer iOS-Applikation festlegen. |
Ein PickerWheel bezieht sich auf das Rad vom DatePicker und wird für die Datumsauswahl auf iOS-Geräten verwendet.
Sie können die folgenden Elemente des PickerWheel-Controls steuern:
-
Hour
-
Minute
-
Day
-
Month
-
Year
Mögliche ActionModes sind Input, Buffer und Verify.
![]() |
Im folgenden Beispiel haben Sie die Uhrzeit am PickerWheel auf 11:15 und das Datum auf 23 October 1988 eingestellt.
PickerWheel-Control unter iOS |
Steuern Sie RadioButtons in nativen Android-Applikationen wie hier beschrieben: Kapitel "RadioButton".
Eine SearchBar in iOS-Applikationen besteht aus den folgenden Elementen:
-
Suchfeld-Bereich, der im Tosca XScan als eine SearchBar angezeigt wird. Steuern Sie diese Control wie hier beschrieben: Kapitel "TextBox".
-
Eine Schaltfläche, die Sie steuern können wie hier beschrieben: Kapitel "Button".
Eine SearchBar in Android-Applikationen besteht aus den folgenden Elementen:
-
Suchfeld-Bereich, der im Tosca XScan als eine TextBox angezeigt wird. Steuern Sie diese Control wie hier beschrieben: Kapitel "TextBox".
-
Eine Schaltfläche, die im Tosca XScan als Button oder Image angezeigt wird. Steuern Sie diese wie hier beschrieben: Kapitel "Button" bzw. Kapitel "Image".
Ein Slider bezieht sich auf:
-
SeekBar auf Android-Geräten
-
UISlider auf iOS-Geräten
Sie können Slider in nativen Android- und iOS-Applikationen automatisieren. Es werden nur standardmäßige Slider unterstützt.
In der Spalte Value müssen Sie eine ganze Zahl zwischen 0 und 100 eingeben. Dieser Wert ist ein Prozentsatz des Slider-Bereichs. Wenn ein Slider beispielsweise Werte von 0 bis 1 000 hat und Sie den Wert Value im Tosca Commander auf 50 setzen, bedeutet dies, dass Sie den Wert des Slider auf 500 setzen.
![]() |
Bei einigen Geräten oder in einigen Applikationen ist der gesamte Slider möglicherweise aufgrund der Bildschirmauflösung des Geräts oder der Implementierung der Applikation nicht sichtbar. In diesem Fall kann der von Tricentis Tosca gewählte Wert leicht vom Wert auf dem Slider abweichen. Passen Sie den Wert Ihrer Eingabe an die Bildschirmanzeige Ihres Gerätes an. |
![]() |
Im folgenden Beispiel haben Sie den Wert des Slider auf 88 gesetzt. Im nächsten Testschritt überprüft Tricentis Tosca diesen Wert mit der Aktion Verify und wartet dann, bis der Slider auf Enabled steht.
Slider-Wert auf 88 eingestellt |
Ein Switch bezieht sich auf einen Switch auf Android-Geräten.
Steuern Sie Switches in nativen Android-Applikationen wie hier beschrieben: Kapitel "CheckBox".
Eine TabBar bezieht sich auf:
-
TabHost auf Android-Geräten
-
UITabBar auf iOS-Geräten
Steuern Sie TabBars in nativen Android- und iOS-Applikationen wie hier beschrieben: Kapitel "TabControl".
Eine TextBox bezieht sich auf:
-
EditText auf Android-Geräten
-
UITextField bzw. UISecureTextField auf iOS-Geräten
Steuern Sie TextBoxes in nativen Android- und iOS-Applikationen wie hier beschrieben: Kapitel "TextBox".
Controls in mobilen Webapplikationen steuern
In mobilen Webapplikationen können Sie Folgendes steuern:
-
Standard-Controls mit xOS-Modulen, die Sie mit dem Tosca XScan oder der Image-Based Test Automation erstellt haben.
-
Standard-Controls mit HTML-XModulen, die Sie über die XBrowser Engine 3.0 erstellt haben.
Um mobile Webapplikationen zu automatisieren, können Sie die folgenden Standard-HTML-Controls steuern wie in Kapitel "Controls steuern" beschrieben:
![]() |
Mit dem Steuerungsparameter ScrollingBehavior können Sie die Bildschirmposition eines HTML-Controls durch Anpassen des Scrollbereichs festlegen. Nähere Informationen zur Einstellung des Scroll-Verhaltens finden Sie hier: siehe Kapitel "ScrollingBehavior ". |
Fallback-Mechanismus für {CLICK}-Aktionen aktivieren
Wenn Sie die {CLICK}-Operation auf ein Control anwenden und Steuerungsprobleme auftreten, können Sie anstelle eines Klicks ein Tippen simulieren.
Erstellen Sie dazu den TCP TapByCoordinates in Ihrem Testfall und setzen Sie seinen Value auf True.
Wenn Sie diesen TCP auf True setzen, übergibt die Mobile Engine 3.0 die Koordinaten der Controls an den Appium-Server. Es wird dann ein Tippen auf das Control simuliert, für das Sie die {CLICK}-Aktion angegeben haben.