21 Appium-methoden: gebruikershandleiding (met code!)

We zullen bespreken hoe te gebruiken Appium methoden In dit Appium-zelfstudie. appium is een wikkel bovenop Selenium webstuurprogramma. Alle Selenium-methoden zijn al aanwezig in Appium. Afgezien daarvan biedt Appium een ​​groot aantal manieren om te communiceren met native applicaties.

Hoe gebruik ik de pressKey-code met behulp van Appium-methoden?

 public void pressKeyCode(AndroidKey-code) {
\tandroidDriver.pressKey(nieuwe KeyEvent(code));
   \T }
Hier kunt u keyEvent doorgeven, zoals AndroidKey.ENTER om in te voeren of AndroidKey.BACK om te tikken
op
Terug-knop Op dezelfde manier kunnen gebruikers deze gebruiken voor lange toetsaanslagen, zoals:
public void longPressKeyCode(AndroidKey-code) {
    \tandroidDriver.longPressKey(nieuwe KeyEvent(code));
        \T}

Hoe krijg ik de huidige activiteit met Appium-opdrachten?

Om de huidige activiteit te verkrijgen, kunnen we de huidige activiteitsmethode gebruiken.
Bijvoorbeeld:
openbare tekenreeks currentActivity() {
\treturn androidDriver.currentActivity();
   \T }

Hoe naar controleer of de app is geïnstalleerd of niet?

Om te controleren of de app is geïnstalleerd of niet, kunnen we het volgende gebruiken: public boolean isAppInstalled(String bundleId) { return androidDriver .isAppInstalled(bundleId); }

Hoe start je activiteit in Android met behulp van Appium-methoden?

Volg de onderstaande methode om de activiteit te starten:
public void startActivity(String pakketnaam, String-activiteit) {
poging {
  androidDriver.startActivity(nieuwe activiteit(pakketnaam, activiteit));
} vangst (uitzondering e) {
\t e.printStackTrace();
}

Hoe scrol je naar een bepaalde tekst met behulp van Appium-methoden?

public MobileElement scrollTo(String-tekst) {
MobileElement textFinder = androidDriver
.findElementByAndroidUIAutomator
("nieuwe UiScrollable(nieuwe UiSelector()"
+ ".resourceId(\\"android:id/lijst\\"))
.scrollIntoView("
+ "nieuwe UiSelector().text(\\"" + tekst + "\\"));");
\t retourneer tekstFinder;
}

Hoe het toetsenbord te verbergen met behulp van Appium-methoden?

public void hideKeyboard() {probeer {androidDriver.hideKeyboard(); } catch (Uitzondering e) { LoggerUtils.error("Uitzondering in het verbergen van toetsenbord" + e.getMessage()); }

Hoe krijg ik een voortgangsdialoog met behulp van Appium-methoden?

public MobileElement getProgressDialog() { return androidDriver .findElementById ("android:id/progress"); }

Hoe naar links te vegen met Appium-methoden ??

public void swipeLeft(Door door) {
\tMobileElement element = (MobileElement) androidDriver.findElement(door);
\tint-verschuiving = 1;
\tPunt p = element.getCenter();
\tPuntlocatie = element.getLocation();
\tAfmetingsgrootte = element.getSize();
\tint startX=locatie.getX() + size.getWidth() - offset;
\tint startY=p.getY();
\tint endX=locatie.getX() + verschuiving;
\tnieuwe TouchAction(Android-stuurprogramma)
    .press(PointOption.point(startX, startY))
    .waitAction(WachtOpties.
waitOptions(java.time
.Duur.vanMillis(1000)))
    .moveTo(PointOption.point(eindX, beginY))
    .uitgave()
    .presteren();
    }

Hoe naar rechts te vegen met Appium-methoden?

public void swipeRight(Door door) {
\tMobileElement element = (MobileElement) androidDriver.findElement(door);
\tint-verschuiving = 1;
\tPunt p = element.getCenter();
\tPuntlocatie = element.getLocation();
\tAfmetingsgrootte = element.getSize();
\tint startX=locatie.getX() + offset + 20;
\tint startY=p.getY();
\tint endX=locatie.getX() + size.getWidth() - offset;
\tnieuwe TouchAction(Android-stuurprogramma)
    .press(PointOption.point(startX, startY))
    .waitAction(WachtOpties.
waitOptions(java.time
.Duur.vanMillis(1000)))
    .moveTo(PointOption.point(eindX, beginY))
    .uitgave()
    .presteren();
    }

Hoe omhoog te vegen met behulp van Appium-methoden?

MobileElement-element = (MobileElement) androidDriver.findElement(door);
    \tAfmetingsgrootte = element.getSize();
    \t int endX = (int) (grootte.hoogte * 0.70);
         int startY = (int) (grootte.hoogte * 0.30);
         int startX = (grootte.breedte / 2);
         nieuwe TouchAction (Android-stuurprogramma)
         .press(PointOption.point(startX, startY))
         .waitAction(WachtOpties.
waitOptions(java.time
.Duur.vanMillis(1000)))
         .moveTo(PointOption.point(eindX, beginY))
         .uitgave()
         .presteren();
        
    }

Hoe naar beneden vegen met Appium-methoden?

public void swipeDown(Door door){
    \tMobileElement element = (MobileElement) androidDriver.findElement(door);
    \tAfmetingsgrootte = element.getSize();
    \tint startY = (int) (grootte.hoogte * 0.70);
        int endY = (int) (grootte.hoogte * 0.30);
        int startX = (grootte.breedte / 2);
        nieuwe TouchAction (Android-stuurprogramma)
        .press(PointOption.point(startX, startY))
        .waitAction(WachtOpties.
waitOptions(java.time
.Duur.vanMillis(1000)))
        .moveTo(PointOption.point(startX, endY))
        .uitgave()
        .presteren();
        
    }

Hoe dubbelklikken in Appium met Appium-opdrachten?

public void doubleClick (WebElement-element) { TouchActions-actie = nieuwe TouchActions (androidDriver); actie.doubleClick(element); actie.uitvoeren(); }

Hoe gps uitschakelen in Android?

public static void swicthOffGPSConnection(String androidSdkToolPath, String
apparaat ID) {
\tprobeer {
\t Runtime.getRuntime().
exec(androidSdkToolPath
+ "/adb -s" + apparaat-ID
+ " shell-instellingen zetten secure location_providers_allowed ' '");
\t} catch (Uitzondering e) {
\T
\t e.printStackTrace();
}

Hoe gps inschakelen in Android?

openbare statische leegte swicthONGPSConnection (String androidSdkToolPath, String deviceId) {
\tprobeer {
\t Runtime.getRuntime()
.exec(androidSdkToolPath + "/adb -s" + deviceId
\t\t + " shell-instellingen plaatsen veilige locatie_providers_allowed gps ");
\t} catch (Uitzondering e) {
\T
\t e.printStackTrace();
\T}
    }

Hoe schakel ik wifi uit in Android?

public void switchOFFWifiConnection(String androidSdkToolPath,String deviceId) {
\t\t
poging {
Runtime.getRuntime()
.exec(androidSdkToolPath+
"/adb -s"+apparaat-ID
+"shell ben start -n io.appium.settings/.Settings -e wifi uit");
} catch (IOException e) {
\t\t\t
e.printStackTrace();
}
}

Hoe schakel ik wifi in Android in?

public void switchONWifiConnection (String androidSdkToolPath,String deviceId) {
poging {
Runtime.getRuntime()
.exec(androidSdkToolPath
+ "/adb -s"+deviceId+" shell am start -n io.appium.settings/.Settings -e wifi aan");
} catch (IOException e) {
\t\t\t
e.printStackTrace();
}
}

Hoe gegevens in Android uitschakelen?

public void switchOFFDataConnection(String androidSdkToolPath,String deviceId) {try {Runtime.getRuntime() .exec(androidSdkToolPath + "/adb -s"+deviceId+" shell am start -n io.appium.settings/.Settings -e data off" ); System.out.println("*************** Wifi uit ******"); } catch (IOException e) { // TODO Automatisch gegenereerd catch-blok e.printStackTrace (); } }

Hoe schakel ik gegevens in Android in?

public void switchONDataConnection(String androidSdkToolPath,String deviceId) {try {Runtime.getRuntime() .exec(androidSdkToolPath + "/adb -s"+deviceId+" shell am start -n io.appium.settings/.Settings -e data on" ); } catch (IOException e) { // TODO Automatisch gegenereerd catch-blok e.printStackTrace (); } }

Hoe verwijder ik de app in Android?

public void uninstallTheApp (String androidSdkToolPath, String deviceId, String pkg) { probeer { Runtime.getRuntime() .exec (androidSdkToolPath + "/adb -s" + deviceId + " uninstall " + pkg); } catch (uitzondering e) { System.out.println(e); } }

Hoe de vluchtmodus in iOS te schakelen?

openbare leegte toggleFlightMode() {
\tDimensie venster = iosDriver.
beheren().window().getSize();
\tprobeer {
\tint startX = venster.breedte / 2;
\t\tint startY = venster.hoogte;
\t\tint endY = venster.hoogte / 10;
\t\tnieuwe TouchAction(iosDriver)
\t\t.press(PuntOptie.punt(startX, startY))
\t\t.waitAction(WachtOpties
\t\t.waitOptions(java.time
.Duur.vanMillis(1000)))
\t\t.moveTo(PointOption
\t\t.point(startX, endY)).release().perform();\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\t\t} catch (Uitzondering e) {
\t\tSysteem.out.println("\
Kan niet naar boven vegen.\
");
\t\te.printStackTrace();
\t\t}
\t\tMobileElement-vlucht = null;
\t\tif ((vlucht = iosDriver
\t\t\t.findElement(door
\t\t\t.name("Vliegtuigmodus"))).isDisplayed()) {
\t\t\tflight.klik();
\t\t\tnieuwe TouchAction(iosDriver)
\t\t\t\t\t.tap(TapOpties
\t\t\t.tapOptions()
.withPosition(PuntOption
\t\t\t.point(venster.breedte / 2, 10))).perform();
\t\t} anders {
\t\t\tthrow new RuntimeException("Vliegmodusknop niet gevonden.");
\t\t}
\T}

Conclusie

Tot nu toe hebben we gesproken over de top 20 meest gebruikte appium methoden. In het volgende onderwerp zullen we schrijven over de Appium inspecteur voor Android en iOS. Raadpleeg dit voor meer informatie over deze sectie link.

Laat een bericht achter