Appium+python自动化3-启动淘宝app

前言   

前面两篇环境已经搭建好了,接下来就是需要启动APP,如何启动app呢?首先要获取包名,然后获取launcherActivity。获取这两个关键东西的方法很多,这里就不一一多说,小伙伴们可以各显神通。小编这里主要给大家推荐一个sdk自带的实用工具aapt. 

    aapt即Android Asset Packaging Tool,在SDK的build-tools目录下。该工具可以查看apk包名和launcherActivity,当然还有更多的功能,有兴趣的可以查看相关资料。

一、下载aapt

    1.在android-sdk里面双击SDK-manager,下载buidl-tools

Appium+python自动化3-启动淘宝app
 

    2.勾选build-tools,随便选一个版本,我这里选的是24的版本

Appium+python自动化3-启动淘宝app
 

    3.下载完成后,在D:\androidsdk\android-sdk-windows\build-tools\24.0.0目录下找到aapt.exe,将这个路径设置环境变量,添加到path下

Appium+python自动化3-启动淘宝app
 

    4.打开cmd。输入aapt出现如下界面,说明环境OK了

Appium+python自动化3-启动淘宝app


二、获取apk包名

    1.将准备测试的APK放到D盘某个目录,如D:\test

    2.打开cmd,输入指令aapt dump badging D:\test\xxx.apk(APK的全名,如手机淘宝.apk)

   3.以手机淘宝.apk为例,如下图

Appium+python自动化3-启动淘宝app

    4.这里就可以看到apk的包名:com.taobao.taobao

注:老司机可以直接把apk放在桌面上,输入指令后拖到cmd框


三、获取launcherActivity

    1.接着上一步操作,cmd屏幕拖到中间l找到auncherActivity

    2.这里可以看到,淘宝的launcherActivity值为com.taobao.tao.welcome.Welcome

Appium+python自动化3-启动淘宝app


四、写脚本

    1platformName:这里是android的apk

    2.deviceName:手机设备名称,通过adb devices查看

    3.platformVersion:android系统的版本号

    4.appPackage:apk包名

    5.appActivity:apk的launcherActivity

Appium+python自动化3-启动淘宝app
 

五、运行appium

    1.启动appium,右上角点三角形按钮,变成正方形,就是启动状态。

Appium+python自动化3-启动淘宝app

    2.确认手机连上电脑

Appium+python自动化3-启动淘宝app

    3.在pycharm运行脚本,随后在手机上会弹出安装下面两个软件的提示,安装后,桌面上多两个图标。那么恭喜你启动成功!

Appium+python自动化3-启动淘宝app
 

    4.接着会看到淘宝app已经启动啦,有木有小激动~~

 

六、最终代码如下

# coding=utf-8

from appium import webdriver

desired_caps = {

                'platformName': 'Android',

                'deviceName': '30d4e606',

                'platformVersion': '5.0',

                # apk包名

                'appPackage': 'com.taobao.taobao',

                # apk的launcherActivity

                'appActivity': 'com.taobao.tao.welcome.Welcome'

                }

driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

这个地址是怎么来的呢?

Appium+python自动化3-启动淘宝app
 

这一篇主要学会使用aapt工具,然后启动app的一个流程,启动app后,下一步就是要定位元素了,定位元素android sdk里面用一个自带的uiautomatorviewer,appium里面也有一个Inspector,下篇会详细介绍。

上一篇:HtmlUnit爬取js动态生成的网页


下一篇:Appium+python自动化(二十四)- 白素贞千年等一回许仙 - 元素等待(超详解)