详解appium+python 启动一个app步骤


Posted in Python onDecember 20, 2017

询问度娘搭好appium和python环境,开启移动app自动化的探索(基于Android),首先来记录下如何启动待测的app吧!

如何启动APP?1.获取包名;2.获取launcherActivity。获取这两个关键东西的方法很多,推荐使用sdk自带的aapt:aapt即Android Asset Packaging Tool,在SDK的build-tools目录下。该工具可以查看apk包名和launcherActivity,当然还有更多的功能,有兴趣的可以查看相关资料。

一、下载aapt:

1.在安卓-sdk里面双击SDK-manager,下载build-tools:

详解appium+python 启动一个app步骤

2.勾选build-tools,选中一个版本

详解appium+python 启动一个app步骤

3.下载完成后,在D:\APP\android-sdk_r24.4.1-windows\android-sdk-windows\build-tools\25.0.2目录下找到aapt.exe,并将该路径设置环境变量,添加到path下;

详解appium+python 启动一个app步骤

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

详解appium+python 启动一个app步骤

二、获取apk包名

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

2.打开cmd,输入指令aapt dump badging D:\test\xxx.apk

3.以taobao.apk为例,如图:

详解appium+python 启动一个app步骤

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

三、获取launcherActivity

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

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

详解appium+python 启动一个app步骤

四、写脚本

1.platformName:这里是android的apk

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

3.platformVersion:android系统的版本号

4.appPackage:apk包名

5.appActivity:apk的launcherActivity

# -*- coding:utf-8 -*-
'''本段代码非淘宝,而是本人实际操作的app'''
import os, time, unittest
from selenium import webdriver
PATH = lambda p:os.path.abspath(os.path.join(os.path.dirname(__file__),p))
desired_caps = {}
desired_caps['platformName'] = 'Android' # 设备系统
desired_caps['platformVersion'] = '6.0.1' # 设备系统版本
desired_caps['deviceName'] = 'MI 4LTE' # 设备名称
desired_caps['app'] = PATH(r"E:\tests\GuoYuB2B_2.1.apk")
desired_caps['appPackage'] = 'com.guoyu.b2b'
desired_caps['appActivity'] = 'com.guoyu.b2b.ui.activity.SplashActivity'
driver = webdriver.Remote("http://localhost:4723/wd/hub", desired_caps)
time.sleep(5)

五、运行appium

1.启动appium,右上角变成三角形

详解appium+python 启动一个app步骤

2.确认手机连上电脑

详解appium+python 启动一个app步骤

3.在pycharm运行脚本,随后在手机(手机不要设置锁屏),会看到app被自动启动了!!!

4.成功!!

后面继续一起学习!!!以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python切片工具pillow用法示例
Mar 30 Python
对Python3中bytes和HexStr之间的转换详解
Dec 04 Python
详解Python odoo中嵌入html简单的分页功能
May 29 Python
python3实现高效的端口扫描
Aug 31 Python
python实现画出e指数函数的图像
Nov 21 Python
opencv resize图片为正方形尺寸的实现方法
Dec 26 Python
检测tensorflow是否使用gpu进行计算的方式
Feb 03 Python
Python中断多重循环的几种方式详解
Feb 10 Python
python函数调用,循环,列表复制实例
May 03 Python
python如何操作mysql
Aug 17 Python
python3环境搭建过程(利用Anaconda+pycharm)完整版
Aug 19 Python
python3处理word文档实例分析
Dec 01 Python
浅谈Django自定义模板标签template_tags的用处
Dec 20 #Python
Python实现感知机(PLA)算法
Dec 20 #Python
详解Python nose单元测试框架的安装与使用
Dec 20 #Python
使用python实现knn算法
Dec 20 #Python
python实现kNN算法
Dec 20 #Python
解析Python中的eval()、exec()及其相关函数
Dec 20 #Python
详解Python中 sys.argv[]的用法简明解释
Dec 20 #Python
You might like
20个PHP常用类库小结
2011/09/11 PHP
php的webservice的wsdl的XML无法显示问题的解决方法
2014/03/11 PHP
PHP has encountered a Stack overflow问题解决方法
2014/11/03 PHP
laravel5.6实现数值转换
2019/10/23 PHP
js url传值中文乱码之解决之道
2009/11/20 Javascript
jquery.validate使用攻略 第五步 正则验证
2010/07/01 Javascript
解析dom中的children对象数组元素firstChild,lastChild的使用
2013/07/10 Javascript
获取数组中最大最小值方法js代码(自写)
2013/08/12 Javascript
JS操作JSON方法总结(推荐)
2016/06/14 Javascript
基于AngularJS的拖拽文件上传的实例代码
2017/07/15 Javascript
AngularJS中scope的绑定策略实例分析
2017/10/30 Javascript
浅析vue深复制
2018/01/29 Javascript
Nuxt.js之自动路由原理的实现方法
2018/11/21 Javascript
jQuery时间戳和日期相互转换操作示例
2018/12/07 jQuery
Vue 指令实现按钮级别权限管理功能
2019/04/23 Javascript
在 Vue 中编写 SVG 图标组件的方法
2020/02/24 Javascript
vue基础知识--axios合并请求和slot
2020/06/04 Javascript
vue项目中js-cookie的使用存储token操作
2020/11/13 Javascript
Vue3 实现双盒子定位Overlay的示例
2020/12/22 Vue.js
[57:29]Alliance vs KG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/17 DOTA
儿童python练习实例
2018/05/27 Python
python调用外部程序的实操步骤
2019/03/04 Python
Python使用os.listdir()和os.walk()获取文件路径与文件下所有目录的方法
2019/04/01 Python
11个Python3字典内置方法大全与示例汇总
2019/05/13 Python
python2与python3爬虫中get与post对比解析
2019/09/18 Python
如何使用pandas读取txt文件中指定的列(有无标题)
2020/03/05 Python
keras读取训练好的模型参数并把参数赋值给其它模型详解
2020/06/15 Python
Python 在局部变量域中执行代码
2020/08/07 Python
Python pymsql模块的使用
2020/09/07 Python
浅析几个CSS3常用功能的写法
2014/06/05 HTML / CSS
服务标兵事迹材料
2014/05/04 职场文书
幼儿园师德演讲稿
2014/05/06 职场文书
教师职位说明书
2014/07/29 职场文书
万能检讨书2000字
2014/10/17 职场文书
幽默导游词应该怎么写?
2019/08/26 职场文书
Vue CLI中模式与环境变量的深入详解
2021/05/30 Vue.js