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
2.勾选build-tools,随便选一个版本,我这里选的是24的版本
3.下载完成后,在D:\androidsdk\android-sdk-windows\build-tools\24.0.0目录下找到aapt.exe,将这个路径设置环境变量,添加到path下
4.打开cmd。输入aapt出现如下界面,说明环境OK了

二、获取apk包名
1.将准备测试的APK放到D盘某个目录,如D:\test
2.打开cmd,输入指令aapt dump badging D:\test\xxx.apk(APK的全名,如手机淘宝.apk)
3.以手机淘宝.apk为例,如下图

4.这里就可以看到apk的包名:com.taobao.taobao
注:老司机可以直接把apk放在桌面上,输入指令后拖到cmd框
三、获取launcherActivity
1.接着上一步操作,cmd屏幕拖到中间l找到auncherActivity
2.这里可以看到,淘宝的launcherActivity值为com.taobao.tao.welcome.Welcome

四、写脚本
1platformName:这里是android的apk
2.deviceName:手机设备名称,通过adb devices查看
3.platformVersion:android系统的版本号
4.appPackage:apk包名
5.appActivity:apk的launcherActivity
五、运行appium
1.启动appium,右上角点三角形按钮,变成正方形,就是启动状态。

2.确认手机连上电脑

3.在pycharm运行脚本,随后在手机上会弹出安装下面两个软件的提示,安装后,桌面上多两个图标。那么恭喜你启动成功!
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)
这个地址是怎么来的呢?
这一篇主要学会使用aapt工具,然后启动app的一个流程,启动app后,下一步就是要定位元素了,定位元素android sdk里面用一个自带的uiautomatorviewer,appium里面也有一个Inspector,下篇会详细介绍。
Appium+python自动化3-启动淘宝app【转载】的更多相关文章
- Appium+python自动化3-启动淘宝app
前言 前面两篇环境已经搭建好了,接下来就是需要启动APP,如何启动app呢?首先要获取包名,然后获取launcherActivity.获取这两个关键东西的方法很多,这里就不一一多说,小伙伴们可以各显神 ...
- appium实例1:启动淘宝app
1.在android-sdk里面双击SDK-manager,下载buidl-tools 2.勾选build-tools,随便选一个版本,我这里选的是24的版本 3.下载完成后,在D:\androi ...
- Appium+python自动化20-查看iOS上app元素属性
前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道,appium的windows版自带的Inspector可以定位app上的元素 Mac版的appium1.6的 ...
- Appium+python自动化20-查看iOS上app元素属性【转载】
前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道,appium的windows版自带的Inspector可以定位app上的元素Mac版的appium1.6的版 ...
- Appium(Python)驱动手机淘宝App
请注意操作步骤: 1. 用数据线连接手机, 打开开发者模式, 并赋予相关权限, 并保持不锁屏状态: 2. 启动Appium桌面服务端: 3. 运行程序: 首次运行, Appium会在手机上安装3个Ap ...
- Appium+python自动化17-启动iOS模拟器APP源码案例
前言 上一篇已经可以启动iOS模拟器上的safari浏览器了,启动app比启动浏览器要复杂一点,本篇以github上的源码为案例详细介绍如何启动iOS模拟器的app 一.clone源码 1.githu ...
- Appium+python自动化15-在Mac上环境搭建【转载】
前言 mac上搭建appium+python的环境还是有点复杂的,需要准备的软件 1.nodejs 2.npm 3.cnpm 4.appium 5.pip 6.Appium-Python-Client ...
- Appium+python自动化4-元素定位uiautomatorviewer【转载】
前言 环境搭建好了,下一步元素定位,元素定位本篇主要介绍如何使用uiautomatorviewer,通过定位到页面上的元素,然后进行相应的点击等操作. uiautomatorviewer是androi ...
- Appium启动淘宝APP,输入搜索内容
# -*- coding:utf-8 -*- from appium import webdriver from time import sleep desired_caps ={ 'platform ...
随机推荐
- AD9 设置网络标号作用域
http://blog.sina.com.cn/s/blog_99c8ec600102uxul.html 1.版本:Altium Designer 10 2.原因:在进行多原理图设计时, 不同原理图之 ...
- 1864: [Zjoi2006]三色二叉树
1864: [Zjoi2006]三色二叉树 链接 分析: 做得最智障的一题了... 首先中间输出两个数之间没空格(换行居然也过了...), 写了dp[i][0/1/2],后来知道其实dp[i][0/1 ...
- Error:Java home supplied via 'org.gradle.java.home' is invalid
Finally i found my solution. In the project root i found gradle.properties configure this java home ...
- Pascal小游戏 贪吃蛇
一段未完成的Pascal贪吃蛇 说这段代码未完成其实是没有源代码格式化,FP中一行最多只有255字符宽. uses crt; const screenwidth=50; screenheight=24 ...
- 19、AngularJs知识点总结 part-1
1.AngularJs AngularJs是一款JavaScript开源库,由Google维护,用来协助单一页面应用程序: AngularJs的目标是通过MVC模式增强基于浏览器的应用,使开发和测试变 ...
- leetcode 【 Remove Duplicates from Sorted List 】 python 实现
题目: Given a sorted linked list, delete all duplicates such that each element appear only once. For e ...
- katalon系列一:初识Katalon Studio自动化测试工具
最近准备把公司的系统搞上UI自动化,先是自己用Python+selenium+pytest写了一个框架,开始写case的时候发现效率极其慢.原因为: (1)开发为提高前端响应时间,使用前端路由技术,一 ...
- elk-filebeat收集docker容器日志
目录 使用docker搭建elk filebeat安装与配置 docker容器设置 参考文章 首发地址 使用docker搭建elk 1.使用docker-compose文件构建elk.文件如下: ve ...
- 孤荷凌寒自学python第三十八天初识python的线程控制
孤荷凌寒自学python第三十八天初识python的线程控制 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.线程 在操作系统中存在着很多的可执行的应用程序,每个应用程序启动后,就可以看 ...
- min_free_kbytes是内存最安全值的阈值,然后这个值是怎么影响到系统内存回收的呢?
min_free_kbytes 内存域水印值:min_free_kbytes 当不设置的时候:sqrt(16M)=4k 4k*4 = 16k 设置内存水印值的函数是: 6792 /* 6793 * I ...