【发布时间】:2015-07-15 08:08:18
【问题描述】:
很长一段时间以来,我一直在努力将 iOS 本机应用程序(.app 文件)从我的 Macbook 调用到真实设备 iPad2 中。请帮忙! 这是我的 POC 描述:
要做的任务:iOS 使用 #Appium#Java#SeleniumJarfiles#OnRealIOSDeviceiPAD2#TestNG 自动化原生 .app 文件
使用的设备:Macbook (iOS 10.10.1),xCode(6.3),安装了命令行工具:->Eclipse Kepler,Appium 1.3.4,iPad2(iOS 8.3),JDK(1.8.25),全部需要Selenium,Appium_Client jar 文件。
这是我从 macbook(使用 Appium-node.js)在 iPad2 上启动本机应用程序的设置方法
@Test
public void setUp() throws Exception
{
// set up appium
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "seerut");
capabilities.setCapability("PlatformName", "iOS");
capabilities.setCapability("PlatformVersion", "8.1");
capabilities.setCapability(CapabilityType.PLATFORM, "iOS");
capabilities.setCapability("appPackage", "com.wooqer.wooqer");
capabilities.setCapability("udid","df5f3518932eb98b90b452c904dccfd2cd510dac");
capabilities.setCapability("bundleid", "com.wooqer.wooqer");
File app = new File("/Users/wooqer/Desktop/Anil/Payload/Wooqer.app");
capabilities.setCapability("app", app.getAbsolutePath());
driver = new IOSDriver( new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
System.out.println("App launched");
}
【问题讨论】:
-
无法将 [/Users/wooqer/Desktop/Anil/Payload/Wooqer.app] 安装到 ID 为 [df5f3518932eb98b90b452c904dccfd2cd510dac] 的设备。错误 [错误:命令失败:断言失败:(AMDeviceStartService(device, CFSTR("com.apple.afc"), &afcFd, NULL) == 0),函数 handle_device,文件 fruitstrap.c,第 523 行。]at/Applications /Appium.app/Contents/Resources/node_modules/appium/lib/devices/common.js:147:10 在 ChildProcess.exithandler (child_process.js:662:7) 在 ChildProcess.emit (events.js:98:17)在 Process.ChildProcess 中可能关闭 (child_process.js:766:16)。 handle.onexit (child_process.js:833:5)
标签: ios selenium-webdriver appium ios-ui-automation