详解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实现爬虫下载漫画示例
Feb 16 Python
Python基本语法经典教程
Mar 11 Python
python类的继承实例详解
Mar 30 Python
python opencv实现旋转矩形框裁减功能
Jul 25 Python
python+selenium 点击单选框-radio的实现方法
Sep 03 Python
python内置模块collections知识点总结
Dec 19 Python
使用Python串口实时显示数据并绘图的例子
Dec 26 Python
python 串口读取+存储+输出处理实例
Dec 26 Python
Python中pyecharts安装及安装失败的解决方法
Feb 18 Python
python3 使用traceback定位异常实例
Mar 09 Python
python 机器学习的标准化、归一化、正则化、离散化和白化
Apr 16 Python
python实现层次聚类的方法
Nov 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
php smarty模版引擎中的缓存应用
2009/12/11 PHP
详解Yii2 rules 的验证规则
2016/12/02 PHP
PHP实现将标点符号正则替换为空格的方法
2017/08/09 PHP
深入浅析安装PhpStorm并激活的步骤详解
2020/09/17 PHP
javascript检测浏览器flash版本的实现代码
2011/12/06 Javascript
JavaScript快速检测浏览器对CSS3特性的支持情况
2012/09/26 Javascript
批量实现面向对象的实例代码
2013/07/01 Javascript
5秒后跳转到另一个页面的js代码
2013/10/12 Javascript
jquery快捷动态绑定键盘事件的操作函数代码
2013/10/17 Javascript
使用js简单实现了tree树菜单
2013/11/20 Javascript
jqeury-easyui-layout问题解决方法
2014/03/24 Javascript
jQuery网页版打砖块小游戏源码分享
2015/08/20 Javascript
javascript伸缩菜单栏实现代码分享
2015/11/12 Javascript
JavaScript中自带的 reduce()方法使用示例详解
2016/08/10 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
利用CDN加速react webpack打包后的文件详解
2018/02/22 Javascript
浅谈在Vue.js中如何实现时间转换指令
2019/01/06 Javascript
NodeJs之word文件生成与解析的实现代码
2019/04/01 NodeJs
在vue中使用jsx语法的使用方法
2019/09/30 Javascript
vue学习笔记之slot插槽基本用法实例分析
2020/02/01 Javascript
Python struct模块解析
2014/06/12 Python
分享6个隐藏的python功能
2017/12/07 Python
Linux CentOS7下安装python3 的方法
2018/01/21 Python
python爬虫中get和post方法介绍以及cookie作用
2018/02/08 Python
TensorFlow用expand_dim()来增加维度的方法
2018/07/26 Python
基于python实现语音录入识别代码实例
2020/01/17 Python
深入解析HTML5使用SVG图像时的viewBox属性用法
2015/09/02 HTML / CSS
HTML5 localStorage使用总结
2017/02/22 HTML / CSS
服务员岗位责任制
2014/02/11 职场文书
面试自我介绍演讲稿
2014/04/29 职场文书
医院义诊活动总结
2014/07/04 职场文书
国家税务局干部作风整顿整改措施
2014/09/18 职场文书
举起手来观后感
2015/06/09 职场文书
2015年教师节主持词
2015/07/03 职场文书
员工工作心得体会
2019/05/07 职场文书
用PYTHON去计算88键钢琴的琴键频率和音高
2022/04/10 Python