Ich bin ein Anfänger in der Automatisierungsprüfung. Ich versuche, ein gemeinsames Testprojekt für meine Android- und iOS-App zu schreiben. Beide Apps auf iOS und Android haben fast die gleiche Benutzeroberfläche und fließen. Ich möchte wissen, wie ich Appium-Treiber auf der Grundlage der Plattform instanziieren kann. Ab jetzt denke ich eine boolesche Variable isAndroid zu haben, die ich hätte auf isAndroid die tests.Based im Code manuell zu ändern, wie pro @AndroidFindby befinden ich instanziiert AppiumDriver zu AndroidDriver oder IOSDriver und Elemente vor dem Laufen oder @ IOSFindBy Wenn ich Appium vom Terminal zu starten, erwähne ich den Parameter Platform, ist es eine Möglichkeit, dass die Informationen in meinem Code zu holen so, dass ich zu isAndroid variabel und genau den gleichen Testcode auf beiden Plattformen läuft nicht manuell ändern.Wie Instanziieren Appium-Treiber basierend auf Plattform?
0
A
Antwort
0
Sind Sie in der Lage eine Plattform, um zu versuchen, die Ausnahme abfangen und dann die andere versuchen?
try:
driver = webdriver.Remote('http://localhost:4723/wd/hub', ios_caps)
run_iOS_tests(driver)
except selenium.common.exceptions.WebDriverException:
driver = webdriver.Remote('http://localhost:4723/wd/hub', android_caps)
run_android_tests(driver)
Andernfalls müssen Sie einige externe Methode verwenden, um zu sehen, welche Geräte angeschlossen sind (android, ios).
Verwandte Themen
- 1. Angularjs - Ansicht basierend auf Browser/Plattform ändern?
- 2. Wie Instanziieren ng-Controller basierend auf einer Bedingung
- 3. premake5 Wie setze ich outdir basierend auf Plattform + Konfiguration?
- 4. Der beste Ansatz, um Objekt basierend auf String zu instanziieren
- 5. Präprozessordirektive in C# Importieren basierend auf der Plattform
- 6. Wie ODataQueryOptions 0 Instanziieren
- 7. Qt-Programm auf Multi-Plattform bereitstellen, wie?
- 8. Wie baut man GTK + APP für ARM basierend auf Linux-Plattform
- 9. Wie Instanziieren NSViewController in Swift?
- 10. Wie Profil Programm auf Linux-Plattform ohne Neuaufbau?
- 11. Instanziieren einer Klasse in derselben DLL mithilfe von Reflektion basierend auf dem Klassennamen?
- 12. Python-Benachrichtigung auf Windows-Plattform
- 13. haskell-plattform auf nixOS installieren
- 14. MobileFirst Plattform auf IBM Container
- 15. Sauberere Möglichkeit, verschiedene abgeleitete Klassen basierend auf der Größe der Sammlung zu instanziieren?
- 16. Wie SoapMessage ASP.NET-Webdienst instanziieren?
- 17. Wie Objekt in UserControl.Resources instanziieren?
- 18. Wie instanziieren abstrakte Klasse C#?
- 19. wie Instanziieren Einheit in Scala?
- 20. Timeout erreicht auf Firefox auf jeder Plattform
- 21. Lesen einer Datei und Instanziieren eines Objekts mit Eigenschaften basierend auf den gelesenen Daten
- 22. Fehler beim instanziieren com.android.menubar.internal.MenuBarEnhancerCocoa
- 23. So instanziieren GIcon
- 24. statische Bibliothek auf Windows-Plattform Problem
- 25. Wie basierend auf unterschiedlichen Spaltennamen
- 26. Kannel SMS Gateway-Konfiguration auf Windows-Plattform
- 27. Konvertieren String in HEX auf Arduino-Plattform
- 28. Wie instanziiere ich ein Array basierend auf Benutzereingabe
- 29. Modifizieren von Testnamen basierend auf Kommandozeilenparametern
- 30. Video-Chat-Projekt auf Android-Plattform