appium ios真机自动化环境搭建&运行(送源码)

原创: f i n  测试开发社区  6天前

Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路

首先是熟悉Mac的使用习惯:命令行是Linux风格,界面则类似于Windows风格。

(1)安装JDK,并配置环境变量,方法如下:

sudo vi /etc/profile 在最后行加入如下内容:

JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/"

CLASS_PATH="$JAVA_HOME/lib"

PATH=".:$PATH:$JAVA_HOME/bin"

保存退出后,执行生效,输入命令Source ~/.bash_profile

输入命令java –version, 环境安装后成功显示如下所示:

(2)安装Xcode、Xcode commandline tools和iOS模拟器。

在App Store中下载 xcode.dmg并安装 。注意,要0与 Mac的 OS X版本对应。由于App源代码是在Xcode开发环境中开发出来的,因此我们需要在Xcode里调试源码成功运行,并启动所要测试的App,源码的导入和调试可以找iOS开发负责人帮忙搞定,模拟器安装如图3.1所示。

图3.1

(3)安装Homebrew:

curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local--strip  1

brew –v 显示如下所示:

(4)安装indeviceinstaller:

brew install  indeviceinstaller

ideviceinstaller –h 显示如下所示:

(5)安装Appium服务端Node.js:

brew install node

node –v 显示如下所示:

(6)安装Appium客户端。

将双击安装包appium.dmg,或将它拖动到Applications文件夹即完成安装。设置Appium环境变量,将appium.js和appium-doctor.js文件所在路径配置到PATH环境变量设置参考,如图3.2所示。

图3.2

打开Appium客户端,如图3.3所示。

图3.3

(7)用npm安装wd:

npm install wd

(8)安装SourceTree、Git 或SVN,然后取开发的App源代码:

clonessh://zouhui@XXX.XXXXX.com:30020/mnt/repo/app

git 用户名密码 :zouhui/3ihU88uy***    版本管理取源码,输入用户名密码

ssh://zouh@dbs.e.com:30020/mnt/repo/ev**_  App  版本管理取源码路径

(9)申请开发者调试证书。

因为开发者证书苹果是要收费的,所以需要给iOS团队开发的负责人在后端平台工具申请自动化测试需要开发的源码和调试权限,大家可向公司的iOS开发负责人提出申请,提供手机UDID:3c22f4c14660eda7d3051636ae659b6b998af8db;

然后iOS开发负责人会提供:iOS的App源代码、调试证书、开通手机UDID调试权限。

建议让iOS开发负责人直接安装好调试证书,因为证书安装比较麻烦,有时很容易出错,所以请开发人员安装可以很快解决。

也可以先在模拟器上运行,但是一般真实测试过程中都是在真机上运行。

(10)安装Eclipse

(11)安装Ant,并设置环境变量:

sudo

chmod +w /etc/bashrc

export ANT_HOME=/usr/local/apache-ant-1.9.3

export PATH=${PATH}:${ANT_HOME}/bin

(12)Appium客户端界面的配置

真机测试时需要设置以下4个必填项:

1)BundleID:待测试App的package名称, 如com.test.buy。

2)Force Device:iPhone手机设备, 如iPhone 6。

3)Platform Version:iOS版本号, 如9.3。

4)UDID:手机设备唯一ID,如3c22f4c14660eda7d3051636ae659b6b998af7dc。

如图3.4所示。

▲图3.4

Appium中Xcode默认Path设置如图3.5所示。

▲图3-.5

Appium中的环境配置检查Doctor,打勾表示正常,如图3.6所示。

▲图3.6

Appium中的Inspector工具,可以帮助我们快速定位元素,通常也是通过name和XPath等方式。

Appium中,Launch用来启动停止操作,启动成功时如图3.8所示。

▲图3.8

单击图标,弹出Inspector,进行控件元素的获取,查找元素的XPath、name等,如图3.9所示。

▲图3.9

3.3 iOS自动化测试运行

(1)   iPhone手机开启运行自动化 ,单击设置—>开发者—>EnableUI Automation —>yes。

将手机连接到电脑上,并且使Xcode能识别到该手机。

(2)   单击Launch按钮,启动 Appium,无错误日志。

(3)   在Eclipse中运行已经写好的测试代码(详细请看第4章),可看到在Appium客户端中有自动化数据和日志详细信息输出,手机上可以看到看到App自动化测试用例已开始在运行。

(4)   查看测试结果。

3.4 iOS的App自动化测试demo演示视频

登录账号:7980068@qq.com

登录密码:*******

http://www.iqiyi.com/w_19rsoh2gip.html#vfrm=2-3-0-1

http://v.youku.com/v_show/id_XMTY2MzU4OTk5Ng==.html

App 自动化测试框架 demo 源码链接:https://pan.baidu.com/s/1bEwMh4 密码:g7pk

appium ios真机自动化环境搭建&运行(送源码)的更多相关文章

  1. appium ios真机自动化环境搭建&运行(送源码)

    appium ios真机自动化环境搭建&运行(送源码) 原创: f i n  测试开发社区  6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...

  2. appium ios 真机自动化环境搭建

    近期由于工作需要,本小菜在弄appium+ios+iphone真机的移动自动化,在网上找寻各种资料,发现针对IOS方面的资料少之又少,公司其它部门的弄过的同事也寥寥无几,即使有,也是安卓方面的.本次书 ...

  3. 搭建Mac+Java+appium+IOS真机自动化环境

    一.安装前环境准备 1.确保电脑已经有homebrew(包管理器)  下载链接[https://brew.sh/]   2.通过 brew 安装node.js brew install node 安装 ...

  4. appium -ios 真机连接 环境搭建

    补充点一: 安装ios-deploynpm install -g ios-deploy 安装不了报错.! 后来找了找,发现sudo npm install -g ios-deploy --unsafe ...

  5. MAC电脑下Appium + python3 + robotframework ios的真机测试环境搭建

    本人的环境搭建前的准备,MAC电脑一台(macOS Mojave 10.14.0及以上),Xcode 10.0及以上   ,自己注册的一个Apple ID 账户,必须你的电脑能连接互联网,最好不要用公 ...

  6. mac 下 配置appium +ios真机环境

    mac系统:10.11.6 xcode:7 appium:1.5.3 iphone: 6 p 1.搭建 appium 安卓的环境: 1.jdk 2.sdk 3.appium 4.配置环境变量 mac下 ...

  7. Appium+iOS真机环境搭建

    安装目录 1.macOS系统  10.12.6 2.xcode  9.0 3.appium Desktop  1.12.1 4.node.js node -v npm 5.cnpm npm insta ...

  8. MAC本上appium连接真机

    简单介绍一下appium连接ios真机测试环境的软件安装及配置过程: 目前我用的是desktop版本的appium, 所以MAC版本必须要升级到10.12以上,Xcode版本必须要在8.0以上,否则亲 ...

  9. Appium Mac系统 自动测试环境搭建

    一.python 环境准备 Mac 自带 Python 环境,一般为 2.7 版本. 1.查看当前系统默认的Python路径 which python ==> /usr/bin/python 2 ...

随机推荐

  1. 由AnnotatedElementUtils延伸的一些所思所想

    这篇博客的两个主题: spring的AnnotatedElementUtils 个人源码阅读方法论分享 为什么要分享AnnotatedElementUtils这个类呢,这个类看起来就是一个工具类,听起 ...

  2. vector内部的实现1

    写vector的内部方法 #include<vector> using std::vector; //写一个动态内存 class CA{ int a; public: CA(int i){ ...

  3. c语言删除文件的指定行,更新文件

    有时候我们需要删除文件的某一行,来更新文件,在这我个人扩展了一个函数,以删除指定条件的行. static void UpdateHistoryFile(void) { FILE *fin,*fout; ...

  4. drf三大认证补充

    频率认证 源码分析部分 def check_throttles(self, request): for throttle in self.get_throttles(): if not throttl ...

  5. cat命令的一个用法

    1:  cat 1.txt 2.txt 3.txt > 4.txt  这个操作可以把前三个文件的内容全部复制到第四个文件中去

  6. Perl: print @globbing."\n"; 和 print @globbing; 不一样,一个已经转换为数组元素个数了

    48 print @globbing."\n"; 输出: 3

  7. Graylog

    Graylog #Graylog 是与 ELK 可以相提并论的一款集中式日志管理方案,支持数据收集.检索.可视化 ​#Graylog 架构 - Graylog 负责接收来自各种设备和应用的日志,并为用 ...

  8. 6)HTML中a链接跳转地址怎么写

    (1)看 thinkphp5的   附录--->助手函数  --->url 利用url进行书写地址跳转: 比如,你想跳转到cate控制器下的lst方法: <a href=" ...

  9. SpringBoot系列——WebMvcConfigurer介绍

    在上篇文章中,我们遇到了接口WebMvcConfigurer.今天就来大概看一下里面的方法都有什么吧. 为什么要使用WebMvcConfigurer? WebMvcConfigurer是一个接口,提供 ...

  10. FireWall2

    配置防火墙步骤: 1.给接口配置ip,开 service-manage 服务 2.把接口画在zone区域 3.配置策略 4.服务器一定要开启服务 1. interface GigabitEtherne ...