像
Selenium
可以操控Web浏览器,手机APP平台也有类似的自动化测试工具:Appium
;
全文分基础介绍、环境搭建和案例演示三部分介绍Appium
,以帮助Learner快速的上手。
基础介绍
Appium是一个开源的自动化测试框架,用于原生,混合和移动Web应用程序。 它使用WebDriver协议驱动iOS,Android和Windows应用程序。关于它的运作流程,用图来介绍会更加生动形象一些:
在上图中,左边这部分是Appium-Client
,通俗点来说,是用于间接驱动最右边的设备执行预定的自动化测试流程,支持使用多种主流的编程语言进行编写,这也是测试开发人员需要关注的核心部分;中间的Appium-Server
是衔接左边客户端以及右边APP设备端的重要桥梁,一般仅需要配置好环境及启动运行;右边这块,当然就是实际执行自动化测试的终端,如IOS真机、Android真机,或者是模拟器。
环境搭建
- NodeJS
Appium是使用nodejs实现的,因此Node是解释器,首先要确认安装好
- Appium-Server
- nodejs
- appium-desktop
上述的两种方式都可以搭建Appium-Server
环境,后面演示会基于Appium-Desktop。(PS:下载太慢了?分享个百度网盘)
- Andrioid SDK
上述方式可以直接和间接搭建安装Android
环境,因为后面要用到adb
这个工具,所以需要配置好ANDROID_HOME
这个环境变量。(PS:下载太慢了?分享个百度网盘)
- Appium-Python-Client
后面会用到Python来编写Appium客户端:pip install Appium-Python-Client
okay,准备好以上几个环境后,启动Appium测试一下:
案例演示
下面演示在安卓真机上的自动登录Keep
(APP)。
- 获取设备名称。操作流程:开启手机的开发和调试模式,连接电脑授权认证,
Window + R
输入并运行cmd
,用adb devices -l
查看:
- 启动Appium Server进行调试:
从上图可以看到,启动App Session需要有以下几个参数(点击了解更详细的Appium Desired Capabilities):
platformName
,如Android
、iOS
等deviceName
,参考前面是如何获取的appPackage
和appActivity
,获取参考这里
综上所述,这里对应Keep
的信息如下:
1 | { |
点击Start Session
,之后可以看到手机端启动了Keep
,并且在Appium Server端中同步展示:
上述的操作通常只是用来方便获取控件id及定位的,下面基于Python编写完整的Appium-Client
以实现自动登录操作:
1 | from appium import webdriver |
最后,附上运行效果图:
本文转载自;https://blog.mariojd.cn/get-started-with-appium.html
乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站