搭建测试环境最大的苦恼来源于,对未知的理解不够深入,不知从何下手,从网上搜索的文档不够精细...。
小小鱼搭建Appium+IOS+JAVA环境模拟器环境+Demo调试共用了3天时间,真机调试耗时2天,主要时间都耗在软硬件版本兼容匹配了,这是搭建环境中最复杂的一个环节也最耗时的;卸载安装,卸载再安装来回折腾了N次,真机调试软件兼容也折腾了很久除了jdk,appium,eclipse这它都卸载了N次才调试好,啧啧啧~~。
工欲善其事必先利其器
熟悉Mac的系统,本宝宝也是第一次用MAC系统,用起很是费劲,但还好本宝宝以前用过liunx系统,常用命令都是OK的,在搭建环境中也算是事半功倍。
环境搭建前在网上找了很多关于Appium+IOS+JAVA的文档,最终选定《TestHomer的Appium_JAVA基于IOS自动化》地址址:
https://testerhome.com/topics/5233 ) ,原因是:提供了demo与软件下载连接,步骤也是写得很赞的。
环境搭建与配置是当看到终端时要知道打开终端并在终端执行命令,执行命令可能也会遇到用户没有权限等问题,没关系,搜索一下赋权限的命名,执行后再执行终端命令。
注:Chmod u+x jdk-6u31-linux-x64.bin //给该文件添加权限,chmod755 foldername(文件名)-R给文件及文件夹赋权限。
搭建中如果遇到报错,可以利用搜索门户解决,百度,论坛,技术交流群,如果依旧解决不了,就用google吧。
软件的最佳兼容版本
MacOS版本:10.12.1,要大于10.7;
Xcode版本:7.3.1兼容Appium,Xcode版本8.2打包,打包版本可以与开发xcode版本号一样,允许装2个Xcode;
Xcode command line tools版本:7.3.1与xcode保持一至;
Homebrew版本: 终端使用命令下载最最新版本,
命令:usr/bin/ruby -e "$(curl -fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)"
ideviceinstaller版本:终端使用命令下载最新版本; 命令:brew install ideviceinstaller
JDK版本:jdk_7u71_macosx-x64.dmg
Appium版本:appium-1.5.3.dmg;
Node.js版本:终端使用命令下载最最新版本,命令:brew install node
Eclipse版本:eclipse-jee-mars-2-macosx-cocoa-x86_64.tar.gz;
真机IOS系统版本:9.3.2 不能大于10.0;
Demo在模拟器上调试
把TesterHome自带的Demo下载到本机,解压指定目录,导入Ecipse;
服务端启动参数配置,与Appium IOS参数配置一至;
检查Demo是否有明显得语法错,并修改bug;
RunTest
Demo运行通过后替换为自己的工程在模拟器上调试
新建工程 按 Demo的框架创建;
apps替换为要测试的XX.app,这种格式为编绎后的格式,问开发给一个即可;
修改Demo服务端启动参数配置,主要修改:文件名称 File app = new File(appDir, "XXX.app");
修改appium>ios,app路径 App Path:, 修改为当前App路径;
RunTest
注:若启动App,App一直闪退,说明不支持模拟器,换成真机吧。
测试App在真机上调试
满足以下几点:
1.设置>开发者>Enable UI Automation 打开;
2.源码导入XCode;
3.需要developer证书并且将测试机的udid 加入到pp(Provisioning Profile)文件,configruation为debug;
4. 编译打包到终端;
注:2〜4不会要可以找IOS开发人员帮助,本宝宝也是找开发解决的。
5.工程中终端配置启动项
//app bundelid 真机调试,可以问开发要 ;
capabilities.setCapability("app","com.XXX.xxxx.Mxxxchant");
//真机udid 真机调试,连接ITunes可以查到,详细请百度
capabilities.setCapability("udid", "3XXXXXXXXXXXXXXX经1");
6.修改Appium>ios>Basci配置:
将App Path前面的勾去掉否则会重新从apps文件装包; 将bundelid,udid写入对应位置;
7.修改Appium>ios>Advanced配置:
将XCode Path:地址指向appium兼容的那个Xcode安装位置;
真机测试当前Table要切换为Advanced;
8.RunTest