Appium For Windows是一款跨多平台且开源的自动化测试框架工具,Appium建立在测试本机应用程序不需要包含SDK或重新编译应用程序的想法之上,并且用户应该能够使用您首选的测试实践,框架和工具;Appium是一个开源项目,已经做出设计和工具决策,以鼓励一个充满活力的贡献社区;用户可以使用自己喜欢的工具;Appium旨在从任何语言和任何测试框架自动化任何移动应用程序,从测试代码完全访问后端API和DB,使用所有上述编程语言,使用您喜欢的开发工具编写测试,可能还有更多(使用Selenium WebDriver API和特定于语言的客户端库);强大又使用,需要的用户可以下载体验
1、Appium
Appium的基础是测试本机应用程序不需要包括SDK或重新编译应用程序,并且您应该能够使用您首选的测试实践,框架和工具。
2、使用你最喜爱的工具
Appium旨在使任何语言和任何测试框架的任何移动应用程序自动化,从测试代码完全访问后端API和DB。
使用所有上述编程语言与您最喜爱的开发工具一起编写测试,并且可能更多(使用Selenium WebDriver API和特定于语言的客户端库)。
1、C/S架构
Appium的核心是一个web服务器,它提供了一套REST的接口。
它收到客户端的连接,监听到命令,接着在移动设备上执行这些命令,然后将执行结果放在HTTP响应中返还给客户端。
事实上,这种客户端/服务端的架构给予了许多的可能性:比如我们可以使用任何实现了该客户端的语言来写我们的测试代码。比如我们可以把服务端放在不同的机器上。
比如我们可以只写测试代码,然后使用像SauceLabs这样的云服务来解释命令。
2、Session
自动化始终围绕一个session进行,客户端初始化一个seesion(会话)来与服务端交互,不同的语言有不同的实现方式,但是他们最终都是发送为一个POST请求给服务端,请求中包含一个JSON对象,被称作“desiredcapabilities”。此时,服务端就会开启一个自动化的session,然后返回一个sessionID,sessionID将会被用户发送后续的命令。
3、DesiredCapabilities
Desiredcapabilities是一些键值对的集合(比如,一个map或者hash),客户端将这些键值对发给服务端,告诉服务端我们想要怎么测试。比如,我们可以把platformNamecapability设置为iOS,告诉Appium服务端,我们想要一个iOS的session,而不是一个Android的。
我们也可以设置safariAllowPopupscapability为true,确保在Safari自动化session中,我们可以使用javascript来打开新窗口。参见capabilities文档,查看完整的capabilities列表。
4、Appium服务端
Appium服务端有很多语言库Java、Ruby、Python、PHP、JavaScript和C#,这些库都实现了Appium对WebDriver协议的扩展。当使用Appium的时候,你只需使用这些库代替常规的WebDriver库就可以了。
Appium For Windows 环境搭建服务环境:
1 安装Nodejs
下载nodejs安装包(http://nodejs.org/download/)安装
测试安装是否成功:运行cmd,输入node -v
2 安装android的SKD
安装android的sdk包,(http://developer.android.com/sdk/index.html),运行依赖 sdk中的 'android'工具。并确保你安装了Level17或以上的版本 api。
设置ANDROID_HOME 系统变量为你的 Android SDK 路径,并把tools和platform-tools两个目录加入到系统的 Path路径里。
变量: ANDROID_HOME
值: D:android-sdk
设置: Path
值: %ANDROID_HOME%platform-tools;%ANDROID_HOME%tools;
3 安装Apache Ant
安装Apache Ant(http://ant.apache.org/bindownload.cgi)
解压缩文件夹,并把路径加入环境变量。
变量: ANT_HOME
值: D:apache-ant-1.8.2
设置: Path
值: %ANT_HOME%bin
测试ant环境安装成功:运行cmd,输入ant,如果没有指定build.xml就会输出:
Buildfile: build.xml does not exist!
Build failed
4 安装JDK
安装JDK
下载解压文件夹 并且设置 M2HOME 和 M2 环境变量,把 M2 环境变量添加到你的系统PATH变量中。
变量: JAVA_HOME
值: C:Program Files (x86)Javajdk1.7.0_01
变量: classpath
值: %JAVA_HOME%lib;
设置: Path
值: %JAVA_HOME%bin;%JAVA_HOME%jrebin;
测试环境安装成功:运行cmd,输入java -version 如果成功则出现java信息:
5 安装Apache Maven
安装Maven
下载解压文件夹 并且设置 M2HOME 和 M2 环境变量,把 M2 环境变量添加到你的系统PATH变量中。
变量: MAVEN_HOME
值: D:apache-maven-3.1.1
设置: Path:
值: %MAVEN_HOME%bin
测试环境安装成功:运行cmd,输入mvn -v 如果成功则出现maven信息:
6 安装appium
使用npm安装appium。
在cmd使用命令npm install -g appium 下在appium(整个过程较慢,请耐心等待)安装成功后,在cmd输入appium出现以下信息表明安装成功:
至此,appium的安装过程结束。
运行环境
1安装Maven插件
修改 maven 仓库存放位置:
找到 maven 下的 conf 下的 settings.xml 配置文件,我的是在 D:apache-maven-3.2.5confsettings.xml
maven 的仓库默认是放在本地用户的临时文件夹下面的 .m2 文件夹下的 repository 下,我的是在 C:Usersadmcnm.m2repository 目录下,
现在我们来修改将它指定到我们自己的路径下,我现在要将仓库指定到 D:RepositoriesMaven 目录下,只需要将上面注销的本地仓库打开,
然后把相应的路径值写到里面去就行了:
OK,先来体会一下 maven,在 cmd 中敲并回车执行:mvn help:system
这时候 maven 就会从远程仓库开始下载一大堆的东西,没事,让它下载着,迟早都要下载的,
接下来是在 eclipse 中安装 maven 插件,
eclipse 安装插件的方式最常见的有两种:
1. 一种是在线安装,这貌似是用的最多的,就是:Help --> Install New Software,然后输入 HTTP 地址来安装,但有一个很明显的缺点:就是慢!(可以通过FQ解决)
2. 一种是离线安装,用 link 的方式来安装,这种方式可拔性更好,可以随时将插件插上和拔下,非常方便。
eclipse maven3 安装:
1. 使用第一种方式来安装谁都会,只要输入 http 地址:http://m2eclipse.sonatype.org/sites/m2e,把选项勾上,然后等待它下载安装,完成之后重启 eclipse 即可。
2. 这里我不说上面的那种在线安装,原因有二:第一,安装后不好管理;第二,下载太慢;我接下来要说的是使用 link 方式来离线安装 maven3 插件。
官网并不提供 maven 插件的离线安装包,一般的,你在网上搜一下,幸运的话应该可以找得到。我已经将 maven 的离线安装包整理出来,供有需要的人下载,
link 离线安装 eclipse maven 插件
2. 将 网上下载的 eclipse-maven3-plugin.7z 解压缩到Eclipsedropins下
Eclipse 3.6之后,不需要写Link了。直接把你下载的插件,放在Eclipsedropins下。
例如:我的Maven插件目录:
D:eclipsedropinsmaven
之后重启eclipse
检查 eclipse 的 maven 插件是否安装成功:Window --> Preferences
配置 maven:
1. 点击 Add 按钮,选到你本机安装 maven 的路径值
2. 点击 Browse 按钮,选到你 maven 的 setting.xml 配置文件,然后点击 OK,这样就完成了 eclipse maven 插件的配置
eclipse会帮你自动下载maven插件的jar包,耐心等待
运行测试
1. 连接手机或者启动android模拟器。
2. 在cmd启动appium
3. 另开一个cmd终端窗口。切换到实例代码路径下
4. 运行mvn test 进行项目构造这时可以看到在appium终端窗口有值输出,并在模拟器或者手机上已经开始运行脚本。
5.大功告成。
同类推荐
2020-04-03
立即下载2020-05-22
立即下载2022-05-25
立即下载2022-09-02
立即下载2022-12-19
立即下载2022-12-20
立即下载相关文章
迈克菲杀毒软件怎么卸载
2022-12-25MathType快速编辑常用矩阵的教程
2022-12-25Adobe Premiere Pro CS6怎么输出超清视频?
2022-12-25SolidWorks如何将三维图转为二维图输出?
2022-12-18腾讯手游助手修改王者荣耀地区的方法
2022-12-11Ulead GIF Aimator制作空白动画的方法
2022-11-12Pixso如何使用缩放工具调整图层大小?
2022-11-12秀米编辑器制作发光文字的方法
2022-11-12Altium Designer画原理图的方法
2022-05-27360云盘文件去重功能怎么使用?360云盘文件去重功能使用技巧
2021-11-08