基于iOS真机的Appium自动化测试

基于iOS真机的Appium自动化测试,第1张

必要条件

XCode >= 6.0, 7.1.1(注意Appium并不一定支持最新版本的Xcode)
Mac OS X 10.10 or 更高, 建议使用10.11.1

Xcode 安装
APP Store安装
注意事项: Xcode 安装包很大(5G左右),Xcode移动到应用程序(10G左右)所以一定要有足够的空间来安装,Xcode安装完启动,有时候会卡在"正在检验Xcode"其实不是卡,是本生需要很长时间,耐心等待就可以,大概3-5分钟。

目录

Appium安装

IOS 设置


Appium安装

第一种安装方式:使用brew和node安装
查看brew,node是否安装

$brew -v
Homebrew 0.9.5 (git revision 9107; last commit 2016-01-19)
$ node -v
v5.3.0
$ npm install -g appium #安装appium
$ appium  #启动appium
$ npm install -g appium-doctor # 安装appium-doctor

检查appium-doctor是否安装成功

$ appium-doctor

这种安装经常出现下面的问题

使用非root权限,安装会出现下面问题

$ npm install -g appium
npm ERR! Error: EACCES, mkdir '/usr/local/lib/node_modules/appium'
npm ERR! { [Error: EACCES, mkdir '/usr/local/lib/node_modules/appium']
npm ERR! errno: 3,
npm ERR! code: 'EACCES',
npm ERR! path: '/usr/local/lib/node_modules/appium',
npm ERR! fstream_type: 'Directory',
npm ERR! fstream_path: '/usr/local/lib/node_modules/appium',
npm ERR! fstream_class: 'DirWriter',
npm ERR! fstream_stack:
npm ERR! [ '/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23',
npm ERR! '/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:46:53',
npm ERR! 'Object.oncomplete (fs.js:107:15)' ] }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! System Darwin 13.4.0
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "appium"
npm ERR! cwd /Users/test2/temp
npm ERR! node -v v0.10.32
npm ERR! npm -v 1.4.28
npm ERR! path /usr/local/lib/node_modules/appium
npm ERR! fstream_path /usr/local/lib/node_modules/appium
npm ERR! fstream_type Directory
npm ERR! fstream_class DirWriter
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, mkdir '/usr/local/lib/node_modules/appium'
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:46:53
npm ERR! fstream_stack Object.oncomplete (fs.js:107:15)
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /Users/test2/temp/npm-debug.log
npm ERR! not ok code 0

出现上面问题以后使用sudo权限安装appium, appium启动会出现下列问题

$ appium
error: Appium will not work if used or installed with sudo. Please 
rerun/install as a non-root user. If you had to install Appium using 
sudo npm install -g appium, the solution is to reinstall Node using a 
method (Homebrew, for example) that doesn't require sudo to install 
global npm packages.
localhost:temp test2$ sudo appium
error: Appium will not work if used or installed with sudo. Please 
rerun/install as a non-root user. If you had to install Appium using 
sudo npm install -g appium, the solution is to reinstall Node using a 
method (Homebrew, for example) that doesn't require sudo to install 
global npm packages.

所以安装Appium还是按照普通用户来安装,不要使用sudo/root权限安装,出现上面的权限问题,可以给目录加个权限,就可以安装成功

$ sudo chmod -R 777 /usr/local/lib

第二种安装方式:下载appium.dmg安装
安装以后显示如下

IOS 设置

1、使用官方提供的TestAPP执行第一个测试
下载地址:https://github.com/appium/sample-code

$git clone git@github.com:appium/sample-code.git

2、使用官方提供 的TestApp设定Appium_IOS
地址:sample-code/sample-code/apps/TestApp/build/release-iphonesimulator/TestApp.app

iOS模拟器/真机信息配置
正常情况下apple的包是.ipa文件,那里因为所有的ios设备使用的都的ARM处理器,但是我们现在配置的是模拟器的设备,而模拟器是基于Intel处理器,处理架构不一样,所以在编辑生成包的时候请选择.app文件。

请看下图的配置参数

 

App path就是apple包的路径:

设置为:sample-code/sample-code/apps/TestApp/build/release-iphonesimulator/TestApp.app

BunleID就是苹果开发的bundle identifier,仅在真机测试时勾上并填写

UDID苹果设备的唯一ID,仅在真机测试时勾上并填写

Force Device 要测试的iphone设备

Platform Version 要测试的iphone的版本好(设备和版本号一定要匹配)

以上配置好后,点击launch按钮,启动appium服务,启动成功后,可看到如下信息

接下来点击那个类似搜索的按钮来启动client端

如果启动的时候报如下错误你的设备和版本不对的原因,仔细看下log就发现了, 修改一下设备和版本信息重新启动

错误Log

修改设备信息

设置好重新启动,启动成功如下显示
 

感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接免费拿走:

① 2000多本软件测试电子书(主流和经典的书籍应该都有了)

② 软件测试/自动化测试标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python编程语言、API接口自动化测试、web自动化测试、App自动化测试(适合小白学习)


⑤ Python学习路线图(告别不入流的学习) 

上图的资料 在我的QQ技术交流群里(技术交流和资源共享,广告进来腿给你打断)

可以自助拿走,群号953306497(备注“csdn111”)群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/994263.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-21
下一篇2022-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存