听说 XCTest 提速不错,正好将框架底层升级更新。
1,下载 Appium 1.1.0-beta.4
2,准备一台 ios 9.3 以上的设备
3,将设备加入被测应用开发者证书内(加入之后记得更新证书)
4,xcode 最好升级 8.2 以上
Appium 1.1.0-beta.4 下载地址:
下载 appium:
sudo npm install -g appium
sudo npm install -g ios-deploy --unsafe-perm=true
1,安装 appium-xcuitest-driver 依赖 进入 WebDriverAgent 安装目录。运行 bootstrap
cd /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent
(如果 WebDriverAgent 所在路径和此不同,请自行查找)
mkdir -p Resources/WebDriverAgent.bundle sh ./Scripts/bootstrap.sh
保证 运行 sh ./Scripts/bootstrap.sh 无报错就 OK 了
2,用 Xcode 打开 WebDriverAgent,并且编译
进入 WebDriverAgent 文件夹,可用如下方法
首先编译之前你得有 ID 账号,并且登录你的 Xcode 账户。当然如果有开发者账号那么会更好 ,Xcode7 之后,苹果放开了真机调试,所以没有开发者账号。也能在真机上跑起来,直接上截图。(以下截图直接复用,哈哈)
编译 WebDriverAgentLib
编译 WebDriverAgentRunner
可以看看这个帖子 :- https://testerhome.com/topics/6962
//启动参数
public void setup() throws MalformedURLException {
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("platformName","iOS");
capabilities.setCapability("deviceName", "testly");
capabilities.setCapability("udid", "ec0e62d55347d95d9b756fc4d2196b9dd2c63290");
capabilities.setCapability("platformVersion", "10.3");
capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, "XCUITest");
capabilities.setCapability(MobileCapabilityType.APP, "com.test.test");
capabilities.setCapability(MobileCapabilityType.UDID, "ec0e62d55347d95d9b756fc4d2196b9dd2c63290");
driver = new IOSDriver(new URL("http://0.0.0.0:4727/wd/hub"), capabilities);
}
完成以上步骤即可跑起来啦~
证书问题
因为 AppleId 只支持三个账号满了 后面一直 run 不起来,后面只能拿公司的开发者证书,这个问题解决最耗时间。
WebDriverAgent 的 启动问题
一直想着如何启动 手机上 WDA ,其实并不用考虑。通过 appium 启动 new session 就可以走 localhost:8100 即可