网上的关于真机测试的都太复杂了,官网虽然也有相关的文档,但是描述不是特别清楚,而且是英文的。所以本文力求最简单的方法进行 Appium 的真机测试配置。
这里假设你的 appium 环境已经 ok,比如已经可以在模拟器上进行软件测试,但是不知道怎么在真机上执行测试。所以管理 appium 本身环境安装等没有详细说明。
略,直接从 App Store 安装即可
brew install libimobiledevice --HEAD
npm install -g ios-deploy
在这需要进行一些输入
Team
,在这里需要登录你的 Apple 帐号Product Name
,可以随便输入,比如 ttestApp
Organization Identifier
,输入你的组织帐号,比如io.test
,注意如果提示不唯一,需要改名字,改成自己喜欢的都行。项目新建之后对项目进行一些配置:
这一步,选中Automatically manage signing
,在General>Signing>Team
选择自己的帐号,然后会生成Provisioning
文件,把括号中的内容记下来,这就是你的Team ID
,后面会用到。
最后进行编译,编译目标选择自己的手机
可以看到刚才的项目已经安装到自己手机了,现在打开会提示没有信任,进入设置>通用>设备管理
,然后点击自己的 Apple 帐号,进行信任。
这个 App 不要卸载,因为如果这个 App 一直安装在手机上,个人的证书一直都是信任状态,后续安装 WebDriverAgent 就不需要再手动进行信任了。
项目的目录不太一样(自己的跟我的可能有些区别,以自己的为准):
/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj
/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj
,Xcode 打开已有的项目,打开的时候可以使用command+shift+G
来将路径复制进去。
打开项目之后进行一些配置
选中Automatically manage signing
,然后在Team
选择自己的帐号,选择之后可能会提示错误,主要原因是名字重复了,错误提示如图
所以需要把名字改一下,按照下图把默认的com.facebook.WebDriverAgentRunner
改成自己的,改了之后记住个名字后面会用到。
修改完成之后回到General
可以看到Signing
处没有报错就 OK 了。另外还要将WebDriverAgentLib
的Signing
也修改一下。
修改完成之后将项目编译一下,如果没有问题会提示Build Succeeded
。
{
"platformName": "ios",
"platformVersion":"11.2.1",
"deviceName": "iPhone",
"automationName": "XCUiTest",
"bundleId": "", # 这里你自己APP的bundleId,不知道可以问开发
"udid": "x", #手机的uuid
"xcodeOrgId": "", #你自己的Team ID,上面提示你记住了
"xcodeSigningId":"iPhone Developer",
"updatedWDABundleId": "xxx.WebDriverAgentRunner", #上面第二步你修改的DriverAgent的bundle Id
"showXcodeLog": True,
}
可以正常启动手机上的 APP 了。