安装配置Appium环境

安装appium

安装appium有两种方式,一种是通过命令行终端方式,一种是Appium Desktop。这里推荐使用Appium Desktop方式,只需下载下来安装就可以啦。Appium Desktop下载

安装驱动

根据被测应用平台选择不同的驱动,这里在Xcode9上测试iOS,选择XCUITest Driver。这是实现自动化测试很重要的一步。驱动其实也集成在了Appium Desktop中,不需单独安装,但运行环境需要搭好。

1.iOS设备系统必须是iOS9.3及以上
2.macOS系统必须是10.11或10.12
3.Xcode版本为Xcode8及以上
4.Appium版本为1.6及以上
5.安装所需依赖库,包括:

a.node (brew install node)
b.npm (brew install npm)
c.carthage (brew install carthage)
d.libimobiledevice(真机测试需要)(brew install libimobiledevice)
e.ios-deploy(真机测试需要)(brew install ios-deploy)
确定所有依赖是否安装成功,可通过appium-doctor验证,首先安装appium-doctor(npm install -g appium-doctor),然后在终端运行appium-doctor,如图所示,都是打钩状态就证明环境正常(java相关环境不需要配置。

更新Appium中的WebDriverAgent

网上很多是到WebDriverAgent下载最新版本的WebDriverAgent,然后配置替换Appium路径下的WebDriverAgent(/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/),但真机测试一启动导致App反复重启。
这里是不用替换,直接用appium自带的WebDriverAgent,进行相关配置即可。

  • cd 进入appium的WebDriverAgent文件,路径:(/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/)
  • 执行 ./Scripts/bootstrap.sh
  • 直接用Xcode打开WebDriverAgent.xcodepro文件

    • 配置WebDriverAgentLib和WebDriverAgentRunner的证书
    • 连接并选择自己的iOS设备,然后按Cmd+U,或是点击Product->Test
    • 运行成功时,在Xcode控制台应该可以打印出一个Ip地址和端口号
    • 在网址上输入http://192.168.2.101:8100/status,如果网页显示了一些json格式的数据,说明运行成功。

最后一步这里在电脑浏览器访问真机ip时,一直报超时。在网上找到了答案,说国产机通过手机的IP和端口还不能访问,此时需要将手机的端口转发到Mac上。

安装iproxy工具,用法非常简单 iproxy <local port><remote port> [udid]。端口转发后,浏览器访问 http://localhost:8100/status会看到一个json字符串,即说明WebDriverAgent安装成功

启动Appium Desktop,开始测试!

  • 运行Appium-Desktop

  • 开启start server

  • 点击start new session并且在Desired Capabilities 中输入相关的参数后点击Start Session

  • 运行成功后,会弹出一个控制界面,在该界面中可以控制手机上正在运行的程序

利用Appium-Python-Client进行iOS的自动化测试

1.首先在终端安装,python install Appium-Python-Client,如果是python3,就用python3 install Appium-Python-Client
2.在git上下载测试文件测试demo
3.用下载的demo配置好证书,直接安装到手机上
4.找到demo下文件下的appiumSimpleDemo.py,编辑里面的参数udid,和bundleid,里面的app参数如果已经把demo安装到手机的话,可以注释掉;省得去编译测试demo;
5.执行demo下文件下的appiumSimpleDemo.py,终端执行python appiumSimpleDemo.py(或python3 appiumSimpleDemo.py),就可以看到真机开始自动执行测试代码

Appium自动化测试实践的更多相关文章

  1. 记安卓appium自动化测试实践

    一.软件安装 1. 安装node.js,安装路径D:\Program Files\nodejs\ 可以在官网下载https://nodejs.org/zh-cn/download/,版本号为node- ...

  2. appium+java(五)微信小程序自动化测试实践

    前言: 上一篇<appium+java(四)微信公众号自动化测试实践>中,尝试使用appium实现微信公众号自动化测试,接着尝试小程序自动化,以学院小程序为例 准备工作 1.java-cl ...

  3. Appium+python自动化(三十八) - Appium自动化测试框架综合实践 - 框架简介-助你冲击高薪,迎娶白富美(超详解)

    简介 好久没有更新博客了,博友们是不是有点等不及了.不好意思啊,中秋节过后太忙了,这篇是好不容易抽点零碎时间写的.从这一篇开始小伙伴或者童鞋们,就跟随宏哥的脚步,一步步的从无到有,从0到1的搭建一个完 ...

  4. Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)

    简介 经过一段时间的准备,完善的差不多了,继续分享有关Appium自动化测试框架综合实践.想必小伙伴们有点等不及了吧! driver配置封装 kyb_caps.yaml 配置表 参考代码 platfo ...

  5. Appium+python自动化(四十)-Appium自动化测试框架综合实践 - 代码实现(超详解)

    1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.由于时间的关系,宏哥这里用代码给小伙伴演示两个模块:注册和登录. 2.业务模块封装 因为现在各种APP的层出不群 ...

  6. Appium+python自动化(四十一)-Appium自动化测试框架综合实践 - 即将落下帷幕(超详解)

    1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.到今天为止,大功即将告成:框架所需要的代码实现都基本完成. 2.data数据封装 2.1使用背景 在实际项目过程 ...

  7. Appium+python自动化(四十二)-Appium自动化测试框架综合实践- 寿终正寝完结篇(超详解)

    1.简介 按照上一篇的计划,今天给小伙伴们分享执行测试用例,生成测试报告,以及自动化平台.今天这篇分享讲解完.Appium自动化测试框架就要告一段落了. 2.执行测试用例&报告生成 测试报告, ...

  8. 基于图像识别框架Airtest的Windows项目自动化测试实践

    写在前面 上一篇分享了<基于Sikuli GUI图像识别框架的PC客户端自动化测试实践>,但sikuli看起来怎么都像是上个世纪的界面风格,且功能过于简陋.而同样基于图像识别框架的Airt ...

  9. Appium学习实践(四)结构优化

    随着我们测试脚本中的用例越来越多,我们不可能将所有的用例都放在同一个脚本中,所以我们需要优化我们的结构.将脚本放在一个文件夹中,再通过别的脚本来执行脚本.这样,我们也可以有选择性的执行我们的脚本 先来 ...

随机推荐

  1. 字典 -> model

    1.使用KVC init(dict : [String : Any]) { super.init() setValuesForKeys(dict) } override func setValue(_ ...

  2. day23-logging模块

    # logging日志记录的两个内容:1.有5种级别的日志记录模式.2.两种配置方式:basicconfig.logger对象. # logging的作用: #1.排错的时候需要打印很多细节来帮助排错 ...

  3. Jarque-Bera test|pp图|K-S检验|

    Jarque-Bera test: 如何绘制pp图?   找该直线的截距和斜率,通过截距和斜率的值找到正态参数均值和方差,可对这些正态参数进行正态检验. K-S检验的的特点? 并不是只针对正态分布,是 ...

  4. docker启动遇到的问题

    转:https://blog.csdn.net/w1316022737/article/details/83692701 遇到问题: Job for docker.service failed bec ...

  5. 数据中台技术汇(二)| DataSimba系列之数据采集平台

    继上期数据中台技术汇栏目发布DataSimba——企业级一站式大数据智能服务平台,本期介绍DataSimba的数据采集平台. DataSimba采集平台属于DataSimba的数据计算及服务平台的一部 ...

  6. Jenkins+maven+jmeter+eclipse搭建自动化测试平台

    一.准备工作 1.jmeter准备测试脚本 2.maven环境配置 3.eclipse创建maven项目 4.Jenkins集成项目 二.jmeter准备测试脚本 使用jmeter准备测试脚本(不管录 ...

  7. LabVIEW部分视觉函数中文解说

    IMAQ Learn Pattern 2 VI 在匹配阶段创建您要搜索的图案匹配的模板图像的描述,此描述的数据被附加到输入模板图像中.在匹配阶段,从模板图像中提取模板描述符并且用于从检查图像中搜索模板 ...

  8. django框架基础-django模板语言-长期维护

    ##################     常用的模板语言       ####################### # django的模板语言, # # 只需要记两种特殊符号: # # {{ } ...

  9. [LC] 28. Implement strStr()

    Implement strStr(). Return the index of the first occurrence of needle in haystack, or -1 if needle ...

  10. “冰桶挑战”之外:微软科技助力ALS患者

    编者按:"直到ALS出现治疗方法,科技就是我的解药."ALS患者,前美国橄榄球联盟(NFL)球员Steve Gleason如是说.最近,一支微软首届黑客马拉松(Hackathon) ...