一.前言
上一章节环境已经搭建好了,接下来就是需要启动APP,如何启动app呢?首先要获取包名,然后获取launcherActivity。获取这两个关键东西的方法很多,这里就不一一多说,小伙伴们可以各显神通。小编这里主要给大家推荐一个sdk自带的实用工具aapt.
aapt即Android Asset Packaging Tool,在SDK的build-tools目录下。该工具可以查看apk包名和launcherActivity,当然还有更多的功能,有兴趣的可以查看相关资料
二.aapt安装
1.在android-sdk里面双击SDK-manage.exe
2.勾选build-tools,随便选一个版本,我这里选的是28的版本
3. 下载完成后,在C:Program Files (x86)AndroidandroidSDKuild-tools28.0.1目录下找到aapt.exe,将这个路径设置环境变量,添加到path下
4. 打开cmd。输入aapt出现如下界面,说明环境OK了
三.获取apk包名及launcherActivity
3.1 获取apk包名
1.将准备测试的APK放到D盘某个目录,如D: est
2.打开cmd,输入指令aapt dump badging D: estxxx.apk(APK的全名,如百度.apk)
3.以百度.apk为例,如下图
4.这里就可以看到apk的包名:com.baidu.searchbox
3.2 获取launcherActivity
1.接着上一步操作,cmd屏幕拖到中间l找到auncherActivity
2.这里可以看到,淘宝的launcherActivity值为com.baidu.searchbox.SplashActivity
备注:另一种获取apk包名及launcherActivity方法
1.运行appinum
2.选择android settings,即机器人
3.选择需要测试的app,下面及显示apk包名及launcherActivity
四.获取手机设备名称
手机连接电脑,输入adb devices ,如果没有获取,先输入adb start-server,再输入adb devices (手机要设置为开发模式)
五.appium启动
1.启动appium,右上角点三角形按钮,变成正方形,就是启动状态
六. 执行脚本
#!/usr/bin/env python # -*- codinfg:utf-8 -*- ''' @author: Jeff LEE @file: 启动百度.py @time: 2018-07-25 15:24 @desc: ''' import time from appium import webdriver desired_caps={ 'platformName':'Android', 'deviceName':'D3F021C19001219', #手机设备名称,通过adb devices查看 'platformVersion':'4.4', #android系统的版本号 'appPackage':'com.baidu.searchbox',#apk包名 'appActivity':'com.baidu.searchbox.SplashActivity', #apk的launcherActivity } driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps) time.sleep(10) driver.quit()
手机界面可以看到百度app启动
这一篇主要学会使用aapt工具,然后启动app的一个流程,启动app后,下一步就是要定位元素了,定位元素android sdk里面用一个自带的uiautomatorviewer,appium里面也有一个Inspector,下篇会详细介绍。