Appium+python自动化2-启动百度app
一.前言
上一章节环境已经搭建好了,接下来就是需要启动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)\Android\androidSDK\build-tools\28.0.1目录下找到aapt.exe,将这个路径设置环境变量,添加到path下
4. 打开cmd。输入aapt出现如下界面,说明环境OK了

三.获取apk包名及launcherActivity
3.1 获取apk包名
1.将准备测试的APK放到D盘某个目录,如D:\test
2.打开cmd,输入指令aapt dump badging D:\test\xxx.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,下篇会详细介绍。
Appium+python自动化2-启动百度app的更多相关文章
- appium+python自动化47-首次打开app权限弹窗问题
前言 用真机运行appium代码,首次打开app有的手机会出现权限弹窗问题,一般这种弹窗都是在引导页前面或者引导页后面出现.权限弹窗上面的按钮都是固定的, 只需要定位到"始终允许" ...
- (appium+python)UI自动化_02_appium启动手机app
前提:需先安装配置好appium+python自动化环境,已配置好环境的小伙伴可以参考以下步骤启动Android app,具体步骤如下: 一.USB连接手机 (1)手机USB连接电脑 (2)手机打开开 ...
- Appium+python自动化20-查看iOS上app元素属性
前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道,appium的windows版自带的Inspector可以定位app上的元素 Mac版的appium1.6的 ...
- Appium+python自动化19-iOS模拟器(iOS Simulator)安装自家APP
前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...
- Appium+python自动化20-查看iOS上app元素属性【转载】
前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道,appium的windows版自带的Inspector可以定位app上的元素Mac版的appium1.6的版 ...
- Appium+python自动化19-iOS模拟器(iOS Simulator)安装自家APP【转载】
前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...
- Appium+python自动化-查看app元素属性
本文转自:https://www.cnblogs.com/yoyoketang/p/7581831.html 前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道 ...
- Appium+python自动化8-Appium Python API
Appium+python自动化8-AppiumPython API 前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts conte ...
- Appium+python自动化
名称 链接地址 Appium+python自动化8-Appium Python API(上) http://mp.weixin.qq.com/s/WvpT5oRrYY22avI95FuypQ Appi ...
随机推荐
- jsp中文乱码
<%@page pageEncoding="UTF-8"%> <meta http-equiv="Content-Type" content= ...
- leetcode509
public class Solution { public int Fib(int N) { ) { ; } ) { ; } else { List<int> list = new Li ...
- VS2003在解决方案范围内搜索卡死问题的解决
在Win7系统上使用VS2003的时候,在解决方案范围内搜索某个内容的时候,VS会卡死. 这是一个兼容性问题,Win7系统对VS2003的兼容性不好, 网上有人讲了一种解决方法是: 在vs2003的图 ...
- Eclipse集成SonarLint
https://docs.sonarqube.org/display/PLUG/Writing+Custom+Java+Rules+101
- 机器学习进阶-目标跟踪-KCF目标跟踪方法 1.cv2.multiTracker_create(构造选框集合) 2. cv2.TrackerKCF_create(获得KCF追踪器) 3. cv2.resize(变化图像大小) 4.cv2.selectROI(在图像上框出选框)
1. tracker = cv2.multiTracker_create() 获得追踪的初始化结果 2.cv2.TrackerKCF_create() 获得KCF追踪器 3.cv2.resize(fr ...
- day08-MySQl创建用户和授权
权限管理 我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作.包括select.update.delete.grant等操作.那么一般情况DBA工程师会创建一个用户和密码,让你去连接数 ...
- oracle第四天笔记
游标 /* 序列: ORACLE使用来模拟ID自动增长的 */ create sequence seq_test4; create table test2( tid number primary ke ...
- python 函数返回值笔记
今天学习python时候学习到闭包和柯里化 感觉看概念时候不好理解,自己写下大概就明白点了 柯里化如下 定义一个加法函数 def add(x, y): return x + y 这是没有柯里化之前的函 ...
- [PHP]自定义session存储机制的两种方案
---------------------------------------------------------------------------------------------------- ...
- 18.1利用socket .io 实现 editor间代码的同步
首先,我们想实现在同一个页面editor 大家同时编辑 同步 所以能 我们需要这个url 作为我们 session id 或者叫聊天室的roomid 或者 反正就是保证他们在同一个list里面 就是 ...