Best io.appium code snippet using io.appium.java_client.AppiumDriver.execute
MobileBase.java
Source: MobileBase.java
...243244 HashMap<String, Object> scrollObjects = new HashMap<String,Object>();245 scrollObjects.put("direction", "down");246 scrollObjects.put("element", elements);247 js.executeScript("mobile: scroll", scrollObjects);248 try {249 Thread.sleep(1000);250 } catch (InterruptedException e) {251 e.printStackTrace();252 System.out.println("scroll wont work for you");253254 }255 }256 }257 258 /**************************************************** For ANDROID **********************************************/259 260 /************************************ Find element by Text **********************************************/261
...
DriverBase.java
Source: DriverBase.java
...482 + id + "\").instance(0))");483 }484485 @Override486 public Response execute(String driverCommand, Map<String, ?> parameters) {487 return null;488 }489490 private void logStart(String msg) {491 Log.debug(String.format("- [{%s}]", msg));492 }493494// private void logEnd(String msg) { 495// Log.debug(String.format("+ [{%s}]", msg));496// }497498 @Override499 public void rotate(DeviceRotation rotation) {500 // TODO Auto-generated method stub501502 }503504 @Override505 public DeviceRotation rotation() {506 // TODO Auto-generated method stub507 return null;508 }509510 @Override511 public Response execute(String driverCommand) {512 // TODO Auto-generated method stub513 return null;514 }515516 @Override517 public WebElement findElement(String by, String using) {518 // TODO Auto-generated method stub519 return null;520 }521522 @Override523 public List<WebElement> findElements(String by, String using) {524 // TODO Auto-generated method stub525 return null;
...
Utility.java
Source: Utility.java
...116 By.xpath("//div[@class='modal-content']//div[@class='sp-module-content']//button[@class='close']"))117 .click();118 String sql1 = "select player_id , user_name from weaver.st_pm_player_master where email_id = '" + username + "'";119 System.out.println(sql1);120 rs = stmt.executeQuery(sql1);121 while (rs.next()) {122 db_playerID = rs.getString(1);123 db_userName = rs.getString(2);124 }125 }126 public void registerUser(String email, String password, String phone) throws SQLException, InterruptedException {127 System.out.println("******* Start User Registration *******");128 driver.navigate().to("https://test.khelplayrummy.com");129 driver.findElement(By.id("email")).sendKeys(email);130 driver.findElement(By.id("reg_password")).sendKeys(password);131 driver.findElement(By.id("mobile")).sendKeys(phone);132 driver.findElement(By.xpath("//div[@class='button_holder']//button[@type ='submit']")).click();133 Thread.sleep(10000);134 String sql1 = "select player_id, last_login_date , user_name , last_login_ip from weaver.st_pm_player_master where email_id = '"+ email + "'";135 System.out.println(sql1);136 rs = stmt.executeQuery(sql1);137 while (rs.next()) {138 db_playerID = rs.getString(1);139 db_regDate = rs.getString(2);140 db_userName = rs.getString(3);141 db_regIP = rs.getString(4);142 }143 System.out.println("******* End User Registration *******");144 }145 public void logout() {146 driver.findElement(By.xpath("//i[@class='fa fa-power-off']")).click();147 driver.findElement(By.xpath("//button[text()='Yes']")).click();148 }149 public void launchHybridApp() throws MalformedURLException {150 System.out.println("Starting kpr app");151 cap = new DesiredCapabilities();152 cap.setCapability("deviceName", "OPPO F11 PRO");153 // cap.setCapability("udid", "OJMVNFJJLVP7LBCA");154 cap.setCapability("udid", "65SOHY8TZ94DE6PN");155 cap.setCapability("platformName", "Android");156 cap.setCapability("platformVersion", "10");157 // cap.setCapability("unicodeKeyboard", true);158 // cap.setCapability("resetKeyboard", true);159 cap.setCapability("appPackage", "com.khelplay.rummy");160 cap.setCapability("appActivity", "org.cocos2dx.javascript.splash.AppActivity");161 URL url = new URL("http://127.0.0.1:4723/wd/hub");162 appiumDriver = new AndroidDriver<MobileElement>(url, cap);163 appiumDriver.resetApp();164 appiumDriver.manage().timeouts().implicitlyWait(25, TimeUnit.SECONDS);165 System.out.println("Application Started......");166 }167 public void loginUser_HybridApp(String myUserName, String myPassword) throws SQLException, InterruptedException {168 MobileElement userName = appiumDriver.findElement(By.id("com.khelplay.rummy:id/first_name"));169 userName.sendKeys(myUserName);170 MobileElement passwordEle = appiumDriver.findElement(By.id("com.khelplay.rummy:id/et_password"));171 passwordEle.sendKeys(myPassword);172 MobileElement loginBtn = appiumDriver.findElement(By.id("com.khelplay.rummy:id/login_text_view"));173 loginBtn.click();174 Thread.sleep(5000);175 String sql1 = "select player_id from weaver.st_pm_player_master where email_id = '" + myUserName + "'";176 System.out.println(sql1);177 rs = stmt.executeQuery(sql1);178 while (rs.next()) {179 db_playerID = rs.getString(1);180 }181 System.out.println("Login Successful");182 }183 public void register_HybridApp(String email, String phone, String password)184 throws InterruptedException, SQLException {185 System.out.println("**** Registration Stated ****");186 MobileElement registerLink = appiumDriver.findElement(By.id("com.khelplay.rummy:id/register"));187 registerLink.click();188 MobileElement emailTxtBox = appiumDriver.findElement(By.id("com.khelplay.rummy:id/email_id"));189 emailTxtBox.sendKeys(email);190 MobileElement mobilextBox = appiumDriver.findElement(By.id("com.khelplay.rummy:id/mobile_number"));191 mobilextBox.sendKeys(phone);192 MobileElement passwordTxtBox = appiumDriver.findElement(By.id("com.khelplay.rummy:id/password"));193 passwordTxtBox.sendKeys(password);194 MobileElement registerButton = appiumDriver.findElement(By.id("com.khelplay.rummy:id/register_text_view"));195 registerButton.click();196 Thread.sleep(10000);197 try {198 Thread.sleep(10000);199 // right navigation bar on home page200 xCoordinate = heightCalculation(test_widthResolution, recorderd_widthResolution, 987);201 yCoordinate = widthCalculation(test_heightResolution, recorderd_heightResolution, 77);202 new TouchAction(appiumDriver).tap(point(xCoordinate, yCoordinate))203 .waitAction(waitOptions(Duration.ofMillis(250))).perform();204 Thread.sleep(2000);205 MobileElement myAccount1 = appiumDriver206 .findElement(By.xpath("//android.widget.TextView[@text='My Account']"));207 if (myAccount1.isDisplayed()) {208 System.out.println("**** Registration Done ****");209 }210 } catch (Exception e) {211 System.out.println("Test in app not found");212 }213 String sql1 = "select player_id, last_login_date , user_name , last_login_ip from weaver.st_pm_player_master where email_id = '"214 + email + "'";215 System.out.println(sql1);216 rs = stmt.executeQuery(sql1);217 while (rs.next()) {218 db_playerID = rs.getString(1);219 db_regDate = rs.getString(2);220 db_userName = rs.getString(3);221 db_regIP = rs.getString(4);222 }223 String sql2 = "select city from weaver.st_pm_player_info where player_id = '" + db_playerID + "'";224 while (rs.next()) {225 }226 }227 public static int heightCalculation(float testingHeight, float heightResolution, float button_xCoordinate) {228 float xCoordinate;229 xCoordinate = ((1 / heightResolution) * testingHeight) * button_xCoordinate;230 // System.out.println(xCoordinate);...
firstAppiumTest.java
Source: firstAppiumTest.java
...29 //AppiumDriver<MobileElement> driver = new AndroidDriver<MobileElement>(new URL("http://127.0.0.1:4723/wd/hub"), cap);30 //driver.findElement(By.xpath("//*[@text='Views']")).click();31 AppiumDriver<RemoteWebElement> driver2= new AndroidDriver<RemoteWebElement>(new URL("http://127.0.0.1:4723/wd/hub"), cap);32 //driver2.startActivity(new Activity("com.example", "ActivityName"));33 //((JavascriptExecutor)driver).executeScript("window.scrollBy(0,500)", "");34 //TouchActions action = new TouchActions(driver);35 //action.scroll(driver.findElement(By.xpath("//*[@text='WebView']")), 10, 100);36 //action.perform();37 Thread.sleep(5000);38// driver.findElement(By.xpath("//*[@text='WebView']")).click();39// Set<String> views = driver.getContextHandles();40// System.out.println(views);41// driver.context("WEBVIEW_io.appium.android.apis");42// System.out.println(driver.getTitle());43// System.out.println(driver.getPageSource());44 driver2.context("NATIVE_APP");45 //connection(driver2);46 // setLocation(driver2);47 // pressByElement(driver2);...
MobileDevice.java
Source: MobileDevice.java
...19import java.util.function.Consumer;20import java.util.function.Function;21import static com.epam.jdi.light.common.Exceptions.runtimeException;22import static com.epam.jdi.light.driver.WebDriverFactory.getDriver;23import static com.epam.jdi.light.mobile.MobileUtils.executeDriverMethod;24public class MobileDevice {25 public static void rotate(DeviceRotation rotation) {26 executeDriverMethod(AppiumDriver.class, (AppiumDriver driver) -> driver.rotate(rotation));27 }28 public static DeviceRotation getRotation() {29 return executeDriverMethod(AppiumDriver.class,30 (Function<AppiumDriver, DeviceRotation>) AppiumDriver::rotation);31 }32 public static void rotate(ScreenOrientation orientation) {33 executeDriverMethod(AppiumDriver.class, (AppiumDriver driver) -> driver.rotate(orientation));34 }35 public static ScreenOrientation getOrientation() {36 return executeDriverMethod(AppiumDriver.class,37 (Function<AppiumDriver, ScreenOrientation>) AppiumDriver::getOrientation);38 }39 public static void lockDevice() {40 executeDriverMethod(LocksDevice.class, (Consumer<LocksDevice>) LocksDevice::lockDevice);41 }42 public static void lockDevice(Duration duration) {43 executeDriverMethod(LocksDevice.class, (LocksDevice driver) -> driver.lockDevice(duration));44 }45 public static void unlockDevice() {46 executeDriverMethod(LocksDevice.class, LocksDevice::unlockDevice);47 }48 public static boolean isLocked() {49 return executeDriverMethod(LocksDevice.class, LocksDevice::isDeviceLocked);50 }51 public static BatteryInfo getBatteryInfo() {52 WebDriver driver = getDriver();53 if (driver instanceof IOSDriver) {54 return ((IOSDriver) driver).getBatteryInfo();55 } else if (driver instanceof AndroidDriver) {56 return ((AndroidDriver) driver).getBatteryInfo();57 } else {58 throw runtimeException("This method is not supported by the driver. The driver needs to be the instance of either Ios or Android driver");59 }60 }61 public static Location getLocation() {62 return executeDriverMethod(AppiumDriver.class, (Function<AppiumDriver, Location>) AppiumDriver::location);63 }64 public static void setLocation(Location location) {65 executeDriverMethod(AppiumDriver.class, (AppiumDriver driver) -> driver.setLocation(location));66 }67 public static String getDeviceTime() {68 return executeDriverMethod(MobileDriver.class, (Function<MobileDriver, String>) MobileDriver::getDeviceTime);69 }70 public static String getDeviceTime(String format) {71 return executeDriverMethod(MobileDriver.class, (MobileDriver driver) -> driver.getDeviceTime(format));72 }73 // the next methods are for IOS only74 public static void shake() {75 executeDriverMethod(ShakesDevice.class, ShakesDevice::shake);76 }77 public static void performTouchId(boolean match) {78 executeDriverMethod(PerformsTouchID.class, (PerformsTouchID driver) -> driver.performTouchID(match));79 }80 public static void toggleTouchIDEnrollment(boolean enabled) {81 executeDriverMethod(PerformsTouchID.class, (PerformsTouchID driver) -> driver.toggleTouchIDEnrollment(enabled));82 }83 // the next methods are for Android only84 public static void fingerPrint(int fingerPrintId) {85 executeDriverMethod(AuthenticatesByFinger.class, (AuthenticatesByFinger driver) -> driver.fingerPrint(fingerPrintId));86 }87 // this method is for Android only88 public static void setClipBoardText(String text) {89 executeDriverMethod(MobileDriver.class,90 (MobileDriver driver) -> (HasClipboard) driver).setClipboardText(text);91 }92 // this method is for Android only93 public static String getClipBoardText() {94 return executeDriverMethod(MobileDriver.class,95 (MobileDriver driver) -> (HasClipboard) driver).getClipboardText();96 }97 public static List<String> getPerformanceDataTypes() {98 return executeDriverMethod(HasSupportedPerformanceDataType.class, HasSupportedPerformanceDataType::getSupportedPerformanceDataTypes);99 }100 public static List<List<Object>> getPerformanceData(String packageName, String dataType, int dataReadTimeout) {101 return executeDriverMethod(HasSupportedPerformanceDataType.class, (HasSupportedPerformanceDataType driver) -> driver.getPerformanceData(packageName, dataType, dataReadTimeout));102 }103 public static void sendSMS(String phoneNumber, String smsText) {104 executeDriverMethod(AndroidDriver.class,105 (AndroidDriver driver) -> driver.sendSMS(phoneNumber, smsText));106 }107}...
HelperMethods.java
Source: HelperMethods.java
...54 Map<String, Object> args = new HashMap<>();55 args.put("element", element.getId());56 args.put("toVisible", "not an empty string");57 System.out.println(element.getId());58 appiumDriver.executeScript("mobile:scroll", args);59 }60 }61 public void performSwipe(MobileElement element) throws InterruptedException {62 JavascriptExecutor js = appiumDriver;63 Map<String, Object> params = new HashMap<>();64 params.put("direction", "left");65 //params.put("element", element.getId());66 js.executeScript("mobile: swipe", params);67 }68 public void pressBackButton() throws InterruptedException{69 if(appiumDriver instanceof AndroidDriver){70 ((PressesKey) appiumDriver).pressKey(new KeyEvent(AndroidKey.BACK));71 } else {72 appiumDriver.navigate().back();73 }74 }75 public void pressEnterButton() {76 if(appiumDriver instanceof AndroidDriver){77 ((PressesKey) appiumDriver).pressKey(new KeyEvent(AndroidKey.ENTER));78 }79 }80 public Properties getConfigProperties() {...
PressGesture.java
Source: PressGesture.java
...38public class PressGesture extends AbstractPressGesture39{40 41 /* (non-Javadoc)42 * @see com.perfectoMobile.gesture.AbstractGesture#_executeGesture(org.openqa.selenium.WebDriver)43 */44 @Override45 protected boolean _executeGesture( WebDriver webDriver )46 {47 AppiumDriver appiumDriver = null;48 49 if ( webDriver instanceof AppiumDriver )50 appiumDriver = (AppiumDriver) webDriver;51 else if ( webDriver instanceof NativeDriverProvider )52 {53 NativeDriverProvider nativeProvider = (NativeDriverProvider) webDriver;54 if ( nativeProvider.getNativeDriver() instanceof AppiumDriver )55 appiumDriver = (AppiumDriver) nativeProvider.getNativeDriver();56 else57 throw new IllegalArgumentException( "Unsupported Driver Type " + webDriver );58 }59 Dimension screenDimension = appiumDriver.manage().window().getSize();
...
HookHelper.java
Source: HookHelper.java
...37 @After38 public void tearDown(Scenario scenario)39 {40 if (scenario.isFailed()){41 appiumDriver.executeScript("sauce:job-result=failed");42 }43 else {44 appiumDriver.executeScript("sauce:job-result=passed");45 }46 appiumDriver.closeApp();47 }48}...
execute
Using AI Code Generation
1public void testAppium() throws MalformedURLException {2 DesiredCapabilities capabilities = new DesiredCapabilities();3 capabilities.setCapability("deviceName", "My Phone");4 capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android");5 capabilities.setCapability(CapabilityType.VERSION, "4.2.2");6 capabilities.setCapability("platformName", "Android");7 capabilities.setCapability("appPackage", "com.android.calculator2");8 capabilities.setCapability("appActivity", "com.android.calculator2.Calculator");
execute
Using AI Code Generation
1import io.appium.java_client.AppiumDriver;2import io.appium.java_client.android.AndroidDriver;3import org.openqa.selenium.remote.DesiredCapabilities;4import java.net.URL;5import java.net.MalformedURLException;6import java.util.concurrent.TimeUnit;7import java.util.List;8import java.util.HashMap;9import java.util.Map;10public class TestAndroidUIAutomator {11 private static AppiumDriver driver;12 public static void main(String[] args) {13 try {14 openApp();15 Map<String, Object> args1 = new HashMap<String, Object>();16 args1.put("text", "Views");17 String element = (String) driver.executeScript("mobile: androidUIAutomator", args1);18 System.out.println(element);19 } catch (MalformedURLException e) {20 System.out.println(e.getMessage());21 } finally {22 driver.quit();23 }24 }25 public static void openApp() throws MalformedURLException {26 DesiredCapabilities capabilities = new DesiredCapabilities();27 capabilities.setCapability("BROWSER_NAME", "Android");28 capabilities.setCapability("VERSION", "4.4.2");29 capabilities.setCapability("deviceName","Android Emulator");30 capabilities.setCapability("platformName","Android");31 capabilities.setCapability("appPackage", "com.example.android.contactmanager");32 capabilities.setCapability("appActivity","com.example.android.contactmanager.ContactManager");
execute
Using AI Code Generation
1import java.net.URL;2import java.util.concurrent.TimeUnit;3import org.openqa.selenium.By;4import org.openqa.selenium.remote.DesiredCapabilities;5import io.appium.java_client.AppiumDriver;6import io.appium.java_client.MobileElement;7public class AppiumJava {8public static void main(String[] args) {9try {10DesiredCapabilities cap = new DesiredCapabilities();11cap.setCapability("deviceName", "emulator-5554");12cap.setCapability("udid", "emulator-5554");13cap.setCapability("platformName", "Android");14cap.setCapability("platformVersion", "9.0");15cap.setCapability("appPackage", "com.android.calculator2");16cap.setCapability("appActivity", "com.android.calculator2.Calculator");
execute
Using AI Code Generation
1public void executeJScript() { 2 String script = "mobile: scroll"; 3 HashMap<String, String> scrollObject = new HashMap<String, String>(); 4 scrollObject.put("direction", "down"); 5 driver.executeScript(script, scrollObject); 6}7exports.executeJScript = function() { 8 var script = "mobile: scroll"; 9 var scrollObject = { 10 }; 11 driver.executeScript(script, scrollObject); 12}13def executeJScript(): 14 scrollObject = { 15 } 16 driver.executeScript(script, scrollObject)17 scrollObject = { 18 } 19 driver.execute_script(script, scrollObject) 20public void executeJScript() { 21 String script = "mobile: scroll"; 22 Dictionary<String, String> scrollObject = new Dictionary<String, String>(); 23 scrollObject.Add("direction", "down"); 24 driver.ExecuteScript(script, scrollObject); 25}26func executeJScript() { 27 scrollObject := map[string]string{"direction": "down"} 28 driver.ExecuteScript(script, scrollObject) 29}30public function executeJScript() { 31 $script = "mobile: scroll"; 32 $scrollObject = array("direction" => "down"); 33 $driver->executeScript($script, $
execute
Using AI Code Generation
1import io.appium.java_client.AppiumDriver;2import io.appium.java_client.android.AndroidDriver;3import java.net.URL;4import java.net.MalformedURLException;5import org.openqa.selenium.By;6import org.openqa.selenium.WebElement;7import org.openqa.selenium.remote.DesiredCapabilities;8import org.openqa.selenium.remote.Response;9public class AppiumTest {10 public static void main(String[] args) throws MalformedURLException {11 DesiredCapabilities capabilities = new DesiredCapabilities();12 capabilities.setCapability("deviceName", "My Android");13 capabilities.setCapability("platformName", "Android");14 capabilities.setCapability("platformVersion", "4.4.2");15 capabilities.setCapability("app", "/Users/username/Documents/Downloads/ApiDemos-debug.apk");16 capabilities.setCapability("appPackage", "com.example.android.apis");17 capabilities.setCapability("appActivity", ".ApiDemos");
execute
Using AI Code Generation
1public class ScrollToElement {2 public static void main(String[] args) {3 AppiumDriver<MobileElement> driver = null;4 DesiredCapabilities caps = new DesiredCapabilities();5 caps.setCapability("platformName", "Android");6 caps.setCapability("deviceName", "emulator-5554");7 caps.setCapability("automationName", "uiautomator2");8 caps.setCapability("appPackage", "com.android.chrome");9 caps.setCapability("appActivity", "com.google.android.apps.chrome.Main");10 caps.setCapability("noReset", true);11 try {
execute
Using AI Code Generation
1import java.net.URL;2import java.util.HashMap;3import java.util.Map;4import java.util.concurrent.TimeUnit;5import org.openqa.selenium.By;6import org.openqa.selenium.remote.DesiredCapabilities;7import io.appium.java_client.AppiumDriver;8import io.appium.java_client.android.AndroidDriver;9import io.appium.java_client.remote.MobileCapabilityType;10public class AppiumTest {11 public static void main(String[] args) throws Exception {12 DesiredCapabilities capabilities = new DesiredCapabilities();13 capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "Android Emulator");14 capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");15 capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "4.4.2");16 capabilities.setCapability(MobileCapabilityType.APP, "C:\\Users\\Public\\Documents\\Appium\\appium\\apps\\ApiDemos-debug.apk");
Android emulator not started. always throwing error for browserName while not include in caps
Appium test login in browser and back to app
How to automate Home,back,up,down,Menu button at bottom of Android phone using appium java client 6.1.0?
Appium error with testdroid: java.lang.NoClassDefFoundError: org/openqa/selenium/internal/HasIdentity
Chrome browser fails to launch in Appium using Java
Is there anyway to mix ios automation and web automation in a single script using selenium
Appium Android How to tap using the TEXT value
appium : webview : selenium : How to automate touchend event on a div?
Appium: autoAcceptAlert doesn't work to allow access to all photos on IOS 14
How to disable save password on ChromeDriver use Appium and AndroidStudio
Here you can find the platform configurator. Sauce Labs supply it to help with getting the right caps which is what you need. Based on your configuration, the correct caps will look like this for web testing:
DesiredCapabilities caps = DesiredCapabilities.android();
caps.setCapability("appiumVersion", "1.6.4");
caps.setCapability("deviceName","Android Emulator");
caps.setCapability("deviceOrientation", "portrait");
caps.setCapability("browserName", "Browser");
caps.setCapability("platformVersion", "4.4");
caps.setCapability("platformName","Android");
for Hybrid or App testing, the browserName
will be set as:
caps.setCapability("browserName", "");
Check out the latest blogs from LambdaTest on this topic:
Building a website is all about keeping the user experience in mind. Ultimately, it’s about providing visitors with a mind-blowing experience so they’ll keep coming back. One way to ensure visitors have a great time on your site is to add some eye-catching text or image animations.
Sometimes, in our test code, we need to handle actions that apparently could not be done automatically. For example, some mouse actions such as context click, double click, drag and drop, mouse movements, and some special key down and key up actions. These specific actions could be crucial depending on the project context.
People love to watch, read and interact with quality content — especially video content. Whether it is sports, news, TV shows, or videos captured on smartphones, people crave digital content. The emergence of OTT platforms has already shaped the way people consume content. Viewers can now enjoy their favorite shows whenever they want rather than at pre-set times. Thus, the OTT platform’s concept of viewing anything, anytime, anywhere has hit the right chord.
In an ideal world, you can test your web application in the same test environment and return the same results every time. The reality can be difficult sometimes when you have flaky tests, which may be due to the complexity of the web elements you are trying to perform an action on your test case.
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!