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

yipeiwu_com6年前Python基础

询问度娘搭好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:

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

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

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

二、获取apk包名

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

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

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

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

三、获取launcherActivity

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

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

四、写脚本

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,右上角变成三角形

2.确认手机连上电脑

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

4.成功!!

后面继续一起学习!!!以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python设计模式之观察者模式实例

关于设计模式中的观察者模式,定义如下(维基百科): 觀察者模式(有時又被稱為發布/訂閱模式)是軟體設計模式的一種。在此種模式中,一個目標物件管理所有相依於它的觀察者物件,並且在它本身的狀...

Python中title()方法的使用简介

 title()方法返回所有单词的第一个字符大写的字符串的一个副本。 语法 以下是title()方法的语法: str.title(); 参数  &nb...

python中xrange用法分析

本文实例讲述了python中xrange用法。分享给大家供大家参考。具体如下: 先来看如下示例: >>> x=xrange(0,8) >>> pr...

Django之使用内置函数和celery发邮件的方法示例

Django之使用内置函数和celery发邮件的方法示例

邮箱配置 开启stmp服务 以163邮箱为例,点击设置里面的stmp 开启客户端授权密码 如上所示,因为我已经开启了,所以出现的是以上页面。 这样,邮箱的准备就已经完成了。 使用Dj...

浅析python中的分片与截断序列

序列概念 在分片规则里list、tuple、str(字符串)都可以称为序列,都可以按规则进行切片操作 切片操作 注意切片的下标0代表顺序的第一个元素,-1代表倒序的第一个元素;且切片不...