appium启动app失败_一套完整的Appium自动化测试环境搭建过程

ce5865e4e2adc0342cfb59f1093dd400.png

前言

Appium是一个开源的自动化测试框架,支持跨平台,支持多种编程语言,可用于原生,混合和移动web应用程序,使用webdriver驱动ios,android应用程序、那么为了学习app自动化测试首要任务肯定就是搭建测试开发环境, 因此在这里记一次搭建Appium自动化测试环境的完整过程,文章较长,需要花费一定的时间,请耐心阅读,如果文中有什么错误请指正。

安装Java JDK

JDK环境可以看我之前安装Jenkins时的随笔

https://www.cnblogs.com/linuxchao/p/linuxchao-jenkins-setup.html,这里需要注意一点尽量安装jdk 1.8,防止后面链接手机失败

安装Node.js

安装nodejs之前,我们需要知道,为什么要安装nodejs?因为appium是nodejs实现的,node相当于appium的解释器  Node.js下载地址:

https://nodejs.org/en/download/current/

由于我的电脑是windows 64位的系统,这里我直接下载windows 64位的msi程序文件

45c475e248f6dfc477330d33ee6a3e7b.png

下载完成后直接双击安装即可(傻瓜式的安装),所以我就不说具体步骤了,安装后,检查是否安装成功  cmd终端输入第一个命令 node -version,输出下面的信息

890500bb5fd5474dfe010789d78db07c.png

接着再输入 npm 命令,输出下面的信息

64d28cffb5fd33e2806bed1c92bcb757.png

ok, 这说明node.js已经安装成功

安装Appium server

不知道你做过或者学习过selenium没有,这里的appium server 相当于 selenium中的浏览器驱动程序,当启动浏览器驱动时会初始化一个服务器,绑定本机的地址和端口,那么Appium server也一样,当启动appium时同样会初始化一个服务器绑定本地的地址和端口。

安装server有两种方式  

第一种:使用npm工具  

使用命令 npm install -g appium 安装,不过这种安装方式比较慢(我用这种方式没安装成功,可能网速不行,报了一些错误,比较尴尬)  

第二种:安装desktop版本  

这种安装方式还是比较快的,但是下载安装包也比较慢,好歹安装没出现什么问题  

下载地址:

https://bitbucket.org/appium/appium.app/downloads/

2228a48e4c51e35abde1ceb9bf7214e6.png

下载zip文件,其中dmg格式的文件应该是MC系统需要的类型,下载完成之后,解压出安装程序,直接双击appium-installer.exe安装  

这里我也不叙述安装过程了,同样的傻瓜式安装,当然你可以自定安装目录  

配置环境变量  

appium安装目录下的node_modules\.bin添加到系统环境变量(添加放看后面吧)

3438dd35c7b91072205ff0cc513780a6.png

安装完成后能够成功打开桌面的appium程序,说明安装过程暂时没什么问题

28b22d5720a28a18236a49fec1fd45c3.png

安装Android SDK

下载SDK及安装  

下载地址:https://www.androiddevtools.cn/

4bfdeb6734b496025244a907922b25cd.png

下载完成后,直接双击安装即可

安装完成后,找到你的安装目录,并找到SDK-manager工具双击打开

245fdf9c03adfad426e0ffb67bd76a05.png

b6ad9dc5cac1a8cf5444b0bfeb4f0f59.png

自己根据需求选择对应的sdk build-tools,Android SDK Platform-tools及api,api我选择的API 22(5.1.1)版本  

Android SDK Platform-tools, SDK build-tools我这里是直接下载安装的最新版本,如果你下载的版本比较低的话,后面链接模拟器或者真机时可能会链接不上  

点击上图中的[Install packages],弹出下面的页面,点击Accept License后安装,等待所有包安装完成(所需时间比较久,请耐心等待)

502daba1d98bae50a1f694967faa9414.png

配置环境变量

141402f454ab3dd3d9520e2f239fa437.png

新建系统变量

ANDROID_HOME=D:\Program Files\Android\android-sdk变量及值(SDK的安装目录)

177d335c5fe293e7455467502a8f6a87.png

添加系统变量

把platform-tools及tools添加到系统环境变量,变量值(路径)之间使用分号隔开,两个变量值分别为:

%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;

或者直接添加绝对路径

ec5efa9f34a809196e75a0a8546bc6f2.png

配置完环境变量之后,我们就可以使用adb命令了

c8afc7ef8a21cdd4001807924e937ae4.png

安装Appium Client

我们使用python开发appium的自动化测试脚本,肯定离不开appium的一些api库,所以说这里的appium 客户端就是python代码使用的库,用来连接appium server 及操作app  

安装appium client 就非常简单了,只要你已经配置好了python环境,就可以直接使用pip安装了,cmd 执行pipi install Appium-Python-Client即可完成安装,输入下图命令不报错,代表已经安装成功

cead579acc287275d33535f2909aac1d.png

环境检查

以上所有环境安装完成之后,我们可以使用命令先检查一下是否所有配置都是正确的  

cmd执行 appium-doctor命令, 如果没有报错信息,说明所有环境安装正确,如果提示部分环境有问题请认证检查一遍之前安装过的环境

424fa2baa7b238828833c7e5a5896a52.png

安装模拟器

所有的环境已经安装完成,接下来就是链接手机模拟器或者真机了,我这里使用的是夜神模拟器,下载地址:https://www.yeshen.com/

df68a47052206cd6432bdae98f3b7b6f.png

下载完成后直接安装,安装完成后,桌面会生成两个图标,夜神模拟器和夜神多开器。

连接模拟器

开启模拟器的开发者模式  

点击模拟器的设置-点击关于平板电脑-点击版本号(会有提示点击几次打开开发者模式)

8f87a20d7b8b9845866299f0a3e8be5b.png  

打开CMD终端,切换cmd 的工作目录到夜神模拟器的安装目录的bin目录下(或者你把这个目录添加到环境变量也可以,但是最好不要添加到环境变量,因为bin目录下也存在一个adb.exe会和Android SDK中的adb.exe冲突),执行命令 nox_adb.exe connect 127.0.0.1:62001(不同模拟器的这个端口号不同)  

如果执行命令时提示类似:abd server version(40) doesn't match this client (36) 这样的失败信息,那么说明你的server(夜神模拟器的adb(nox_adb.exe))和client(Android SDK中的adb)版本不对应  

检查版本  

cmd 输入 adb version 查看client版本

b15334e02d463d6f3403bc3658f88bd0.png

cmd切换到夜神安装目录的bin目录下,执行nox_adb.exe version

8268c92d0f9e14cfb09222bc07d2a237.png

我的版本是一样的,你的可能是两个不同的版本号, 你需要把Android SDK中的adb拷贝到夜神模拟器安装目录下的bin目录下,并重命名为nox_adb.exe 并替换原来的即可  

连接模拟器  

接下来我们就可以测试连接是否正常了,输入命令 nox_adb.exe connect 127.0.0.1:62001(这里要注意执行命令的目录,应为夜神模拟器安装目录的bin目录下)

e1c8a08f8f4f5b7eb8827c882a59ed4a.png

看到上面的提示后,接着再次输入命令 adb devices (注意:不要在上面的目录下继续输入命令,因为bin下同样存在一个adb.exe ,如果你还在这个目录下执行adb命令,那么使用的并不是Android SDK中的adb,所以切换到其他任意目录执行命令)

7332eb7498084b35dbf53ac7458cc4bd.png

如果你看到的是上图中的信息, 说明已经成功连接上了模拟器, 这里只能说明Android的开发环境没问题了,但是进行自动化时还不一定能够正常控制模拟器

测试环境验证

下面我们通过编写一段简单的代码程序,验证一下程序是否能够成功驱动模拟器打开指定的app,如果没有报错,那么到此为止整个appnium自动化测试环境就已经完成了  

打开appium,并启动服务器,保持模拟器开启状态

fa61e43fdc9966a49df2d3633898930d.png

测试代码

编写如下测试代码

以上代码desired_capabilities参数,暂不做介绍  

输出

6808f48620a514a32d4dca6bd7e9c4b4.gif

对应app被成功打开,表示整个环境已经没有任何问题了,接下来就可以愉快的开启我们的app自动化测试了

总结

最后,回顾一下搭建环境过程中需要注意的点  

1.如果在安装appium的时候提示缺少.net framework 4.5 那么先下载安装它,再安装appium即可

https://www.microsoft.com/zh-cn/download/details.aspx?id=30653

2.注意Android SDK 中adb的版本和模拟器中nox_adb的版本需要相同  

3.下载Andorid SDK的时候一定要安装最新的 platform-tools,防止后面连接模拟器或者真机时遇到不可预料的错误(找不到adb命令等)

661fdf94b1589fc30764bc2229c8c133.png

8d030a186498cbfcdeed9b877f0a56c9.png

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值