Thanks!
Were you able to automate a native iOS app using .ipa file ?
I am new to iOS native app automation using Appium, I just have a .ipa file for the native app. I tried writing the java code as below, but I failed - were you able to do automation by just using .ipa file ?
package iosAppAutomation;
import io.appium.java_client.AppiumDriver;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import static org.junit.Assert.assertTrue;
import java.awt.Point;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.File;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Set;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import javax.swing.Scrollable;
import org.apache.commons.lang3.concurrent.BackgroundInitializer;
import org.omg.CORBA.portable.InputStream;
import org.openqa.selenium.By;
import org.openqa.selenium.By.ByCssSelector;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.Keys;
import org.openqa.selenium.TimeoutException;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.interactions.TouchScreen;
import org.openqa.selenium.interactions.touch.TouchActions;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
public class iosTest {
public AppiumDriver driver = null;
public static void main(String[] args) throws MalformedURLException,
InterruptedException {
iosTest testcases = new iosTest();
// set up appium and launch app
testcases.setUp();
testcases.checkApp();
}
public void setUp() {
try {
System.out.println("Launching App");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "iPhone");
capabilities.setCapability("platformName", "ios");
capabilities.setCapability("udid", "7f29f386e640b1f798fcde4a17a533cad19214ae");
capabilities.setCapability("bundleid", "com.nbcuni.oxygen.tve");
capabilities.setCapability("ipa", "/Users/Automation1/Documents/appFiles/Oxygen_AdhocEnterprise_3.0.0_154.ipa");
driver = new AppiumDriver( new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
System.out.println("App launched");
Thread.sleep(5000);
} catch (Exception e) {
System.out.println("App launch fail");
}
}
public void checkApp() throws InterruptedException {
try {
driver.wait();
Thread.sleep(5000);
} catch (AssertionError ex) {
System.out.println(ex);
}
}
}
Thanks,
NRM