Elementoperationsmethode in Appium TIPS (Java)

Suche nach Elementen

Off-Screen-Elemente

Es scheint, dass es nicht genommen werden kann. Sie können nicht "zu diesem Element scrollen", weil Sie es überhaupt nicht bekommen können. Ich habe richtig gewischt, als ich es getan habe, aber ich kenne die richtige (stabile) Methode nicht.

Dialog

Ich konnte es bis vor einiger Zeit mit einer Funktion vom Typ findElement abrufen, aber jetzt sieht es so aus

python


    appiumDriver.switchTo().alert().accept(); 
    //appiumDriver ist eine Instanz von AppiumDriver

wiederholen

Wenn Sie den Bildschirm mit Webview anzeigen oder den Bildschirm basierend auf den Informationen aus dem Netzwerk anzeigen, ist das Laden möglicherweise nicht bis zum Timeout abgeschlossen. Sie können Gewichte normal hinzufügen, aber wenn Sie es mehrmals versuchen, können Sie Zeit sparen. Aber normalerweise solltest du darüber nachdenken, warum es so schwer ist.

python



/*
 *Eine Funktion, die nur die Ausnahme des Schlafes drückt
 */
  static public void sleep(int millis) {
    try {
      Thread.sleep(millis);
    } catch (Exception e) {
    //Da es sich nur um ein Gewicht handelt, besteht die Ausnahme darin, nur die Stapelspur zu löschen und sie entsprechend zusammenzudrücken
      e.printStackTrace();
    }
  }

  /**
   * try find element /retry/ times.
   * @param by
   * @param retry
   * @return
   */
  public WebElement findElementByXPathSometime(final String by, final int retry){
    int count;
    RuntimeException ex=null;
    WebElement elem;
    for(count = 1;count<=retry;count++) {
      try {
        logger.debug("try to get element : " + by.toString());
        //log4j logger
        elem = appiumDriver.findElementByXPath(by);
        //appiumDriver ist eine Instanz von AppiumDriver
        return elem;
      }catch(RuntimeException e) {
        ex = e;
        logger.debug("failed to get element");
        sleep(5000);
      }
    }

Klicken Sie auf ein Element

Es gibt ein Element, auf das WebElement # click () nicht reagiert. Möglicherweise reagiert es nicht auf die Elemente in Webview. Gehen Sie also wie folgt vor:

python


    WebElement element = findElementByXPathSometime(AppElements.SETTING,20);
    new TouchAction(appiumDriver).tap(element).perform();
    //appiumDriver ist eine Instanz von AppiumDriver

Textfeld

Dies war nicht mehr möglich. Aus irgendeinem Grund kann ich das Element mit "AppiumDriver # findElementBy Hogehoge ()" nicht finden.

python


    (new TouchAction(appiumDriver)).tap(123, 456).perform();
    //Tippen Sie gewaltsam auf das Textfeld
    sleep(1000);
    appiumDriver.getKeyboard().pressKey("nyuuryokusitaimoziretu");

Wenn die harte Tastatur im iOS-Simulator aktiviert ist, wird die weiche Tastatur nicht angezeigt, sodass "AppiumDriver # getKeyboard ()" fehlschlägt. Unbequemlichkeit.

Recommended Posts

Elementoperationsmethode in Appium TIPS (Java)
Automatische Methode zur Größenänderung von Fotos von Java
Rufen Sie die Super-Methode in Java auf
Java-Tipps, Tipps
Java-Methode
Java (Methode)
Java-Methode
[Java] -Methode
Java-Tipps
[Java] -Methode
Rufen Sie Java-Methoden aus JavaScript auf, das in Java ausgeführt wird
Parallelitätsmethode in Java mit grundlegendem Beispiel
[Java] Vergleich von Sammlungs- und StringBuilder-Operationsmethoden
[Java] Behandlung von Java Beans in der Methodenkette
Java-Code-TIPPS
Partisierung in Java
Java-Methodenaufruf von RPG (Methodenaufruf in eigener Klasse)
Änderungen in Java 11
Java8-Methodenreferenz
So erhalten Sie eine Klasse von Element in Java
Methodenname der Methodenkette in Java Builder + α
Java8-Methodenreferenz
Umfangsrate in Java
[Java] Split-Methode
FizzBuzz in Java
[Java] KFunction von Method / Constructor in Java abrufen [Kotlin]
Fügen Sie das Bild mit der statischen Java-Methode in die JAR-Datei ein
[Java] Dateisystembetrieb
Lesen Sie JSON in Java
Interpreter-Implementierung durch Java
Machen Sie einen Blackjack mit Java
Spielen Sie Framework2.5 (Java) -Tipps
Janken App in Java
Einschränkungsprogrammierung in Java
Setzen Sie Java8 in Centos7
JAVA DB-Verbindungsmethode
NVL-artiger Typ in Java
Verbinden Sie Arrays in Java
Aufrufbare Schnittstelle in Java
Java Learning 2 (Lernen Sie die Berechnungsmethode)
Kommentare in der Java-Quelle
Java-Lernnotiz (Methode)
Azure funktioniert in Java
Informationen zur Bindung von Java-Methoden
Informationen zu Aufteilungsmethoden (Java)
Formatieren Sie XML in Java
Java 8 studieren (siehe Methode)
Einfache HTML-Spezialchars in Java
Boyer-Moore-Implementierung in Java
Hallo Welt in Java
Verwenden Sie OpenCV mit Java
WebApi-Memorandum mit Java
Java-Programmierung (Klassenmethode)
Befehle in Java ausführen (Ping)
Verschiedene Threads in Java
Implementierung der Heap-Sortierung (in Java)
Zabbix API in Java
Informationen zur Java8-Stream-Reduzierung
ASCII-Kunst in Java