详解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实现监控linux性能及进程消耗性能的方法
Jul 25 Python
举例讲解Python面相对象编程中对象的属性与类的方法
Jan 19 Python
Python实现对象转换为xml的方法示例
Jun 08 Python
Python中的默认参数实例分析
Jan 29 Python
Django跨域请求问题的解决方法示例
Jun 16 Python
Selenium定位元素操作示例
Aug 10 Python
python numpy 按行归一化的实例
Jan 21 Python
Python基于机器学习方法实现的电影推荐系统实例详解
Jun 25 Python
python命令行工具Click快速掌握
Jul 04 Python
django foreignkey(外键)的实现
Jul 29 Python
利用PyQt5+Matplotlib 绘制静态/动态图的实现代码
Jul 13 Python
Python中三种花式打印的示例详解
Mar 19 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
DOTA2 探索永无止境 玩家自创强悍插眼攻略
2020/04/20 DOTA
使用PHP提取视频网站页面中的FLASH地址的代码
2010/04/17 PHP
PHP上传文件时文件过大$_FILES为空的解决方法
2013/11/26 PHP
PHP 面向对象程序设计(oop)学习笔记 (五) - PHP 命名空间
2014/06/12 PHP
Laravel中使用自己编写类库的3种方法
2015/02/10 PHP
php列出mysql表所有行和列的方法
2015/03/13 PHP
php使用for语句输出三角形的方法
2015/06/09 PHP
php简单实现多维数组排序的方法
2016/09/30 PHP
php中通过eval实现字符串格式的计算公式
2017/03/18 PHP
HTTP状态代码以及定义(解释)
2007/02/02 Javascript
基于jQuery的简单九宫格实现代码
2012/08/09 Javascript
js Array对象的扩展函数代码
2013/04/24 Javascript
web前端开发JQuery常用实例代码片段(50个)
2015/08/28 Javascript
41个Web开发者必须收藏的JavaScript实用技巧
2016/07/22 Javascript
浅谈使用splice函数对数组中的元素进行删除时的注意事项
2016/12/04 Javascript
深入理解Vue-cli搭建项目后的目录结构探秘
2017/07/13 Javascript
你可能不知道的JSON.stringify()详解
2017/08/17 Javascript
layui radio点击事件实现input显示和隐藏的例子
2019/09/02 Javascript
[01:04:29]DOTA2-DPC中国联赛 正赛 Phoenix vs XG BO3 第二场 1月31日
2021/03/11 DOTA
讲解Python的Scrapy爬虫框架使用代理进行采集的方法
2016/02/18 Python
Python中几种导入模块的方式总结
2017/04/27 Python
NetworkX之Prim算法(实例讲解)
2017/12/22 Python
Python编程实现从字典中提取子集的方法分析
2018/02/09 Python
Python实现的计算器功能示例
2018/04/26 Python
解决python报错MemoryError的问题
2018/06/26 Python
解决python中用matplotlib画多幅图时出现图形部分重叠的问题
2019/07/07 Python
python判断一个对象是否可迭代的例子
2019/07/22 Python
使用Python提取文本中含有特定字符串的方法示例
2020/12/09 Python
IE支持HTML5的解决方法
2009/10/20 HTML / CSS
加拿大女鞋品牌:ALDO
2016/11/13 全球购物
中国医药集团国药在线:国药网
2017/02/06 全球购物
诺心蛋糕官网:LE CAKE
2018/08/25 全球购物
大学生学习党课思想汇报
2014/01/03 职场文书
教师节晚会主持词
2015/06/30 职场文书
《窃读记》教学反思
2016/02/18 职场文书
2019年作为一名实习生的述职报告
2019/09/29 职场文书