appium+python 启动一个app步骤

Posted 小布菜鸟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了appium+python 启动一个app步骤相关的知识,希望对你有一定的参考价值。

  询问度娘搭好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.成功!!

  后面继续一起学习!!!

 

 

 

 

  

以上是关于appium+python 启动一个app步骤的主要内容,如果未能解决你的问题,请参考以下文章

测试新人如何使用Python代码封装自动化测试的用例?

python怎么安装nose

Appium+python3-启动真机上app

Appium(Python)驱动手机淘宝App

python+appium+unittest 启动一次app,执行多条test

Appium + python自动化 - 启动app